algebra de boole - circuitos digitais

7
11/12/13 1 Aula 2 – Álgebra Booleana Disciplina: Circuitos Digitais Prof. Kelson R. T. Aires Fonte: Transparências do Prof. Ivan S. Silva Uma álgebra definida por: Um conjunto de operações válidas Um conjunto de valores admissíveis para cada variável Álgebra Booleana Operações Válidas Complemento (NOT) ou Negação ou Inversão É uma operação unária que tem como resultado o valor oposto ao valor da variável a qual é aplicada SÍMBOLO A S EXPRESSÃO S = A A S 0 1 1 0 COMPORTAMENTO EM VHDL S <= NOT A; Operações Válidas Operação (AND) ou “E” ou “mulbplicação lógica” Resulta em ‘1’ se e somente se todas as variáveis de entrada são ‘1’ SÍMBOLO A B S EXPRESSÃO S = A . B A B S 0 0 0 0 1 0 1 0 0 1 1 1 COMPORTAMENTO EM VHDL S <= A AND B; Operações Válidas Operação (OR) ou “OU” ou “adição lógica” Resulta em ‘1’ se pelo menos uma das variáveis de entrada é ‘1’ SÍMBOLO A B S EXPRESSÃO S = A + B A B S 0 0 0 0 1 1 1 0 1 1 1 1 COMPORTAMENTO EM VHDL S <= A OR B; Operações Válidas Operações NAND O complemento de um AND SÍMBOLO A B S EXPRESSÃO S= A . B A B S 0 0 1 0 1 1 1 0 1 1 1 0 COMPORTAMENTO EM VHDL S <= A NAND B;

Upload: matheus-vercosa

Post on 07-Jul-2015

102 views

Category:

Technology


3 download

DESCRIPTION

Contém técnicas de ensino da Algebra Booleana, para ser aplicada em circuitos digitais.

TRANSCRIPT

Page 1: Algebra de Boole - Circuitos Digitais

11/12/13  

1  

Aula  2  –  Álgebra  Booleana    

Disciplina:  Circuitos  Digitais  Prof.  Kelson  R.  T.  Aires  

Fonte:  Transparências  do  Prof.  Ivan  S.  Silva  

•  Uma  álgebra  definida  por:  – Um  conjunto  de  operações  válidas  – Um   conjunto   de   valores   admissíveis   para   cada  variável  

Álgebra  Booleana  

Operações  Válidas  

•  Complemento  (NOT)  ou  Negação  ou  Inversão  – É  uma  operação  unária  que  tem  como  resultado  o  valor  oposto  ao  valor  da  variável  a  qual  é  aplicada  

SÍMBOLO  

A S

EXPRESSÃO  

S = A

A   S  

0   1  

1   0  

COMPORTAMENTO  EM  VHDL  

S <= NOT A;

Operações  Válidas  •  Operação  (AND)  ou  “E”  ou  “mulbplicação  lógica”  – Resulta  em  ‘1’  se  e  somente  se  todas  as  variáveis  de  entrada  são  ‘1’  

SÍMBOLO  A

B S

EXPRESSÃO  

S = A . B

A   B   S  

0   0   0  

0   1   0  

1   0   0  

1   1   1  

COMPORTAMENTO  

EM  VHDL  

S <= A AND B;

Operações  Válidas  

•  Operação  (OR)  ou  “OU”  ou  “adição  lógica”  – Resulta  em  ‘1’  se  pelo  menos  uma  das  variáveis  de  entrada  é  ‘1’  

SÍMBOLO  A

B S

EXPRESSÃO  

S = A + B

A   B   S  

0   0   0  

0   1   1  

1   0   1  

1   1   1  

COMPORTAMENTO  

EM  VHDL  

S <= A OR B;

Operações  Válidas  

•  Operações  NAND  – O  complemento  de  um  AND  

SÍMBOLO  A

B S

EXPRESSÃO  

S= A . B

A   B   S  

0   0   1  

0   1   1  

1   0   1  

1   1   0  

COMPORTAMENTO  

EM  VHDL  

S <= A NAND B;

Page 2: Algebra de Boole - Circuitos Digitais

11/12/13  

2  

Operações  Válidas  

•  Operações  NOR  – O  complemento  de  um  OR  

SÍMBOLO  EXPRESSÃO  

COMPORTAMENTO  

A

B S = A + B

A   B   S  

0   0   1  

0   1   0  

1   0   0  

1   1   0  

EM  VHDL  

S <= A NOR B;

Operações  Válidas  

•  Operações  NAND  e  NOR  – Por   razões   tecnológicas   é   mais   fácil   fazer   o  complemento  de  um  AND   ou  o   complemento  de  um  OR  que  estas  operações  

A S

B

A B S=1

A

B

A B

NAND   AND  

Operações  Válidas  

•  Operações  XOR,  ou  “OU  Exclusivo”  ou  “Disjunção  Exclusiva”  – Resulta  em  ‘1’  se  e  somente  se  exatamente  uma  das  variáveis  de  entrada  tem  o  valor  ‘1’  

– EXPRESSÃO  GERAL:  (A.B)  +  (A.B)  =  A  ⊕  B  •  Veja:  hmp://pt.wikipedia.org/wiki/XOR  

Operações  Válidas  

•  Operações  XOR,  “OU  Exclusivo”  ou  “Disjunção  Exclusiva”  

  SÍMBOLO  A

B S

EXPRESSÃO  

S = A ⊕ B

A   B   S  

0   0   0  

0   1   1  

1   0   1  

1   1   0  

COMPORTAMENTO  

EM  VHDL  

S <= A XOR B;

Operações  Válidas  

•  Operações  XNOR,  ou  “Coincidência”  – Resulta  em  ‘1’  se  e  somente  se  os  valores  de  todas  as  variáveis  de  entrada  são  idênbcos  

– EXPRESSÃO  GERAL:  (A.B)  +  (A.B)  =  A  ¤  B  •  Veja:  hmp://pt.wikipedia.org/wiki/Porta_XNOR  

Operações  Válidas  

•  Operações  XNOR,  ou  “Coincidência”    

SÍMBOLO  A

B S

EXPRESSÃO  

S S = A ¤ B

A   B   S  

0   0   1  

0   1   0  

1   0   0  

1   1   1  

COMPORTAMENTO  

EM  VHDL  

S <= A XNOR B;

Page 3: Algebra de Boole - Circuitos Digitais

11/12/13  

3  

Circuitos  Digitais  -­‐  UFPI   13  

Porta   Símbolo   Expressão  de  saída  

NOT  ou  Não   S=A

 AND  ou  E  

S=A.B

 NAND  ou  Não  E  

S=A.B

 OR  ou  OU  

S=A+B

 NOR  ou  NOU  

S = A + B

 XOR  ou  OU  Exclusivo  

S = A ⊕ B

 Coincidência  

S = A ¤ B

A

B S

A S

A

B S

A

B S

A

B S

A

B S

A

B S A ¤ B  =  A ⊕ B  

Fonte:  Transparências  do  prof.  Ricardo  Brimo  (DIE/UFPI)  

Postulados  e  Idenbdades  

•  Complementação  A  =  A  A  =  0  à  A  =  1  A=    1  à  A  =  0    

•  Adição  A  +  0  =  A  A  +  1  =  1  A  +  A  =  A  A  +  A  =  1  

•  Mulbplicação  A.0  =  0  A.1  =  A  A.A  =  A  A.A  =  0  

Elemento  Neutro  

Elemento  Neutro  

Aritmébca  Booleana  

•  Adição  0  +  0  =  0  0  +  1  =  1  1  +  0  =  1  1  +  1  =  1  

 

•  Mulbplicação  0.0  =  0  0.1  =  0  1.0  =  0  1.1  =  1  

Propriedades  da  Álgebra  de  Boole  

•  Comutabva  

•  Distribubva  

A  .    B  =  B  .    A  

A  +  B  =  B  +  A  

A  ⊕  B  =  B  ⊕  A  

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

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

Propriedades  da  Álgebra  de  Boole  

•  Associabva  (  A  .  B  )  .  C  =  A  .  (  B  .  C  )  =  A  .  B  .  C  

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

(  A  ⊕  B  )  ⊕  C  =  A  ⊕  (  B  ⊕  C  )  =  A  ⊕  B  ⊕  C  

Teoremas  de  De  Morgan  

•  1º  Teorema  :  A  .  B  =  A  +  B  

A   B   A  .  B     A  +  B  

0   0   1   1  

0   1   1   1  

1   0   1   1  

1   1   0   0  

Page 4: Algebra de Boole - Circuitos Digitais

11/12/13  

4  

Teoremas  de  De  Morgan  

•  2º  Teorema  :  A  .  B  =  A  +  B  A.B=  A  +  B   A.B=  A  +  B  

Façamos  =      A    =  X    e    B  =  Y  

X  .  Y  =  (X  +  Y)  

Reescrevendo  em  termos  de  A  e  B  

A  .  B  =  (A  +  B)  

Do  1º  Teorema  

2º  Teorema  

Leis  da  Absorção  •  A  +  A.B  =  A  

Demonstração    A  +  A.B  =  A  A  (1  +  B)  =  A  A  (1)  =  A  A  =  A      

•  A  +A.B  =  A  +  B  Demonstração    A  +A.B  =  A  +  B    A  +A.B  =  A  +  B    A  .(A.B)  =  A  +  B    A  .(A+B)  =  A  +  B    A.B  =  A  +  B    A  +  B  =  A  +  B        

Leis  da  Absorção  

•  (A  +  B).B  =  A.B  Demonstração  (A  +  B).B  =  A.B  A.B  +  B.B  =  A.B  A.B  +  0  =  A.B  A.B  =  A.B      

Idenbdades  Auxiliares  

A.B  +  A.B  =  A  

A.(A  +  B)  =  A  

(A  +  B)  .  (A  +  B)  =  A  

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

Idenbdades  Auxiliares  A.B  +  A.B  =  A  

A(B  +  B)  =  A  

A    =  A  

AA  +  AB  +  BA  +  BB  =  A  

A  +  AB  +  BA  +  0  =  A  

A  (B+1+B)=  A  

A    =  A  

(A  +  B)  .  (A  +  B)  =  A  

A.(A  +  B)  =  A   A.A  +  AB  =  A  

A  +  AB  =  A   A(  1  +  B)  =  A  

A  =  A  

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

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

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

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

A  +  B.C=  A  +B.C  

Avaliação  de  Expressões  Booleanas    

•  Criar  uma  tabela  verdade  para  a  expressão  •  Uma  tabela  verdade  é  uma  tabela  que  para  cada  combinação  possível  de  valores  das  variáveis  de  entrada  mostra  o  resultado  da  expressão  

–  Idenbficar  as  variáveis  de  entrada  – Para  cada  variável  de  entrada,  desbnar  uma  coluna  mais  à  esquerda,  na  tabela-­‐verdade  

– Criar  colunas  à  direita,  conforme  a  ordem  de  precedência  das  operações  conbdas  na  equação  que  se  está  avaliando  

 

Page 5: Algebra de Boole - Circuitos Digitais

11/12/13  

5  

Avaliação  de  Expressões  Booleanas  

•  Ordem  de  Avaliação  de  Expressões  Booleanas  (Ordem  Precedência  dos  Operadores)  

 –  Do  nível  de  parêntesis  mais  interno  para  o  nível  mais  externo    1.  Complemento  de  variável  individual    2.  Operação  “E”    3.  Operação  “OU”  

 •  OBS:  complemento  de  expressão  deve  ser  analisado  assim  

que  a  expressão  a  ser  complementada  for  avaliada.  

Exemplo:    A  +  B  .  C      

Avaliação  de  Expressões  Booleanas  

•  Construção  de  uma  Tabela-­‐Verdade  – Com  n  entradas  uma  função  tem  2n  combinações  de  valores  possíveis.  

•  Avaliação  da  função  –   Atribuir  valores  as  variáveis  na  tabela  –   Avaliar  AND,  OR,  complemento  na  ordem  estabelecida  

– Exemplo  -­‐  DeMorgan:    X  +  Y    =      X  .  Y  X      Y                X      Y                X  .  Y  0        0              1        1                  1    0        1              1        0                  0  1        0              0        1                  0  1        1              0        0                  0  

Funções  Booleanas  e  Circuitos  Lógicos  

•  Dada  uma  função  Booleana,  é  possível  representá-­‐la  graficamente,  por  meio  de  uma  associação  de  portas  lógicas  

•  Esta  associação  chama-­‐se  circuito  lógico  ou  digital  

•  Com  o  circuito  lógico  é  possível  implementar  fisicamente  funções  booleanas  

Funções  Booleanas  e  Circuitos  Lógicos  

•  Pode-­‐se  obter  um  circuito  da  seguinte  maneira:  – cada  termo  é  uma  porta  – cada  literal  é  uma  entrada  para  uma  porta  – portas  adicionais  :  inversores  na  entrada  – composição  dos  termos  (AND  ou  1  OR)  

X  .  Y  .  Z    +  X  .  Y  .  Z  +  X  .  Z  

Cada  ocorrência  de  variável  (complementada  ou  não)  

literais  termo  

Funções  Booleanas  e  Circuitos  Lógicos  

       F  Z  

X  

Y  

X  .  Y  .  Z    +  X  .  Y  .  Z  +  X  .  Z  

Cada  ocorrência  de  variável  (complementada  ou  não)  

literais  termo  

O   número   de   termos   e   literais  dá  uma  medida  aproximada  da  complexidade  do  circuito.    

Funções  Booleanas  e  Circuitos  Lógicos  

•  Exercício  – Faça  a  tabela  verdade  correspondente  da  função  booleana  a  seguir  e  desenhe  o  circuito  lógico  que  a  representa  

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

Page 6: Algebra de Boole - Circuitos Digitais

11/12/13  

6  

Manipulações  Algébricas  

•  Tem  por  objebvo  simplificar  a  função  booleana  e  seu  circuito  lógico:  – Exemplo:  

F  =  X  Y  Z  +  X  Y  Z  +  X  Z  

 lei  distribubva   F  =  X  Y  (  Z  +Z)    +  X  Z  

complemento   F  =  X  Y  .  1    +  X  Z  

elemento  neutro   F  =  X  Y  +  X  Z   2  termos  4  literais  

Manipulações  Algébricas  

•  Não  existe  nenhuma  técnica  para  indicar  a  manipulação  algébrica  a  ser  usada  – Método  de  tentabvas  – Familiaridade  com  axiomas  e  teoremas  da  álgebra  booleana  

Complemento  de  uma  função  

•  Usando  De  Morgan  exemplo:    F  =  X(YZ  +  YZ)  

F  =  X(YZ  +  YZ)    F  =  X  +  (YZ  .YZ)    F  =  X  +  (Y  +  Z)  .  (Y  +  Z)    F  =  X  +  YY  +  YZ  +  ZY  +  ZZ    F  =  X  +  YZ  +  ZY  

Complemento  de  uma  função  

•  Usando  a  tabela  verdade  X        Y            Z    0          0            0    0          0            1  0          1            0    0          1            1  1          0            0  1          0            1  1          1            0  1          1            1    

YZ            YZ    1                        0  0                        0  0                        0  0                        1  1                        0  0                        0  0                        0  0                        1  

YZ  +  YZ                  1                  0                  0                1                1                0                0                1    

F    0  0  0  0  1  0  0  1  

F    1  1  1  1  0  1  1  0  

Resta   saber   como   obter   a  função   e   o   circuito   a   parNr   da  tabela    

Equivalência  entre  portas  lógicas  

•  Inversor  a  parbr  das  portas  NOR  e  NAND  

E   S  

0   1  

1   0  

E S

E   S  

0   1  

1   0  

E S

Equivalência  entre  portas  lógicas  

•  Porta  OR  a  parbr  da  porta  NAND  e  inversores  

A B S

A B

A   B  

0   0   0   0  

0   1   1   1  

1   0   1   1  

1   1   1   1  

BA+ BA*

Page 7: Algebra de Boole - Circuitos Digitais

11/12/13  

7  

Equivalência  entre  portas  lógicas  

•  Porta  AND  a  parbr  da  porta  NOR  e  inversores  

A B S

A B

S

A   B  

0   0   0   0  

0   1   0   0  

1   0   0   0  

1   1   1   1  

BA. BA+

Equivalência  entre  portas  lógicas  

Porta  Lógica   Porta  Equivalente  

   

Fonte:  Transparências  do  prof.  Ricardo  Brimo  (DIE/UFPI)