AB - Funcoes - Logicas - Portas - Logicas

AB - Funcoes - Logicas - Portas - Logicas

José Augusto Baranauskas

Departamento de Computação e Matemática –FFCLRP-USP augusto @u sp.br http://dc m.f mrp.usp.br/~augusto

Funções Lógicas e Portas Lógicas

Nesta apresentação será fornecida uma introdução ao sistema matemático de análise de circuitos lógicos, conhecido como Álgebra de Boole

Serão vistos os blocos básicos e suas equivalências

Histórico

Em meados do século XIX o matemático inglês George Boole desenvolveu um sistema matemático de análise lógica

Em meados do século X, o americano Claude Elwood

Shannonsugeriu que a Álgebra

Booleana poderia ser usada para análise e projeto de circuitos de co mutação

Histórico

Nos primórdios da eletrônica, todos os problemas eram solucionados por meio de sistemas analógicos

Com o avanço da tecnologia, os problemas passaram a ser solucionados pela eletrônica digital

Na eletrônica digital, os sistemas (computadores, processadores de dados, sistemas de controle, codificadores, decodificadores, etc) empregam um pequeno grupo de circuitos lógicos básicos, que são conhecidos como portas e, ou, nãoe flip-flop

Com a utilização adequadas dessas portas é possível implementar todas as expressões geradas pela álgebra de Boole

Álgebra Booleana

Na álgebra de Boole, há somente dois estados (valoresou símbolos) permitidos

Estado 0(zero) Estado 1(um)

Em geral

O estado zero representa não, falso, aparelho desligado, ausência de tensão, chave elétrica desligada, etc

O estado um representa sim, verdadeiro, aparelho ligado, presença de tensão, chave ligada, etc

Álgebra Booleana

Assim, na álgebra booleana, se representarmos por 0 uma situação, a situação contrária é representada por 1

Portanto, em qualquer bloco (porta ou função) lógico somente esses dois estados

(0 ou 1) são permitidos em suas entradas e saídas

Uma variável booleana também só assume um dos dois estados permitidos (0 ou 1)

Álgebra Booleana

Nesta apresentação trataremos dos seguintes blocos lógico s

Após, veremos a correspondência entre expressões, circuitos e tabelas verdade

Por último, veremos a equivalência entre blocos lógicos

Função E(AND)

Executa a multiplicação(conjunção) booleana de duas ou mais variáveis binárias

Por exemplo, assuma a convenção no circuito

Chave aberta = 0; Chave fechada = 1 Lâmpada apagada = 0; Lâmpada acesa = 1

Função E(AND) Situaçõ es possí ve is:

Função E(AND)

Se a chave A está aberta (A=0) e a chave B aberta (B=0), não haverá circulação de energia no circuito, logo a lâmpada fica apagada (S=0)

Se a chave A está fechada (A=1) e a chave B aberta (B=0), não haverá circulação de energia no circuito, logo a lâmpada fica apagada (S=0)

Se a chave A está aberta (A=0) e a chave B fechada (B=1), não haverá circulação de energia no circuito, logo a lâmpada fica apagada (S=0)

Se a chave A está fechada (A=1) e a chave B fechada (B=1), haverá circulação de energia no circuito e a lâmpada fica acesa (S=1)

Observando todas as quatro situações possíveis (interpretações), é possível concluir que a lâmpada fica acesa somente quando as chaves A e B estiverem simultaneamente fechadas (A=1 e B=1)

Função E(AND)

Para representar a expressão S = A eB

Adotaremos a representação S = A.B, onde se lê S = A eB

Porém, existem notações alternativas

Tabela Verdade

A tabela verdade é um mapa onde são colocadas todas as possíveis interpretações (situações), com seus respectivos resultados para uma expressão booleana qualquer

Como visto no exemplo anterior, para 2 variáveis booleanas (A e B), há 4 interpretações possíveis

Em geral, para Nvariáveis booleanas de entrada, há 2N interpretações possíveis

Tabela Verdade da Função E(AND)

Porta Lógica E(AND)

A porta Eé um circuito que executa a função E

A porta Eexecuta a tabela verdade da função E

Portanto, a saída será 1 somente se ambas as entradas forem iguais a 1; nos demais casos, a saída será 0

Representação

Entrada A Saída S

Entrada B

Porta E

Porta Lógica E(AND) A

Porta Lógica E(AND)

É possível estender o conceito de uma porta E para um número qualquer de variáveis de entrada

Nesse caso, temos uma porta Ecom N entradas e somente uma saída

A saída será 1 se e somente se as N entradas forem iguais a 1; nos demais casos, a saída será 0

Porta Lógica E(AND)

Por exemplo, S=A.B.C.D

Função OU(OR)

Executa a soma(disjunção) booleana de duas ou mais variáveis binárias

Por exemplo, assuma a convenção no circuito

Chave aberta = 0; Chave fechada = 1 Lâmpada apagada = 0; Lâmpada acesa = 1

Função OU(OR)

Função OU(OR)

Se a chave A está aberta (A=0) e a chave B aberta (B=0), não haverá circulação de energia no circuito, logo a lâmpada fica apagada (S=0)

Se a chave A está fechada (A=1) e a chave B aberta (B=0), haverá circulação de energia no circuito e a lâmpada fica acesa (S=1)

Se a chave A está aberta (A=0) e a chave B fechada (B=1), haverá circulação de energia no circuito e a lâmpada fica acesa (S=1)

Se a chave A está fechada (A=1) e a chave B fechada (B=1), haverá circulação de energia no circuito e a lâmpada fica acesa (S=1)

Observando todas as quatro situações possíveis, é possível concluir que a lâmpada fica acesa somente quando a chave A ou a chave B ou ambas estiverem fechadas

Função OU(OR)

Para representar a expressão S = A ouB

Adotaremos a representação S = A+B, onde se lê S = A ouB

Porém, existem notações alternativas

Tabela Verdade da Função OU ( O R)

Observe que, no sistema de numeração

Na álgebra booleana, somente dois valores são permitidos (0 e 1)

Porta Lógica OU(OR)

A porta OUé um circuito que executa a função OU

A porta OUexecuta a tabela verdade da função OU

Portanto, a saída será 0 somente se ambas as entradas forem iguais a 0; nos demais casos, a saída será 1

Represe ntaçã o

Entrada A

Saída S Entrada B

Porta O U ( O R)

Entrada A Saída S

Entrada B

Porta Lógica OU(OR)

Porta Lógica OU(OR)

É possível estender o conceito de uma porta OU para um número qualquer de variáveis de entrada

Nesse caso, temos uma porta OUcom N entradas e somente uma saída

A saída será 0 se e somente se as N entradas forem iguais a 0; nos demais casos, a saída será 1

Porta Lógica OU(OR)

Por exemplo, S=A+B+C+D

Função NÃO(NOT)

Executa o complemento(negação) de uma variável binária

Se a variável estiver em 0, o resultado da função é 1

Se a variável estiver em 1, o resultado da função é 0

Essa função também é chamada de inversora

Função NÃO(NOT)

Usando as mesmas convenções dos circuitos anteriores, tem-se que:

Quando a chave A está aberta (A=0), passará corrente pela lâmpada e ela acenderá (S=1)

Quando a chave A está fechada (A=1), a lâmpada estará em curto-circuito e não passará corrente por ela, ficando apagada (S=0)

Função NÃO(NOT)

Para representar a expressã o

S =nãoA

Adotaremos a represe ntaçã o

S = Ā, onde se lê S = não A

Notaçõ es alternativa s

Tabela verdade da função NÃO(NOT)

Porta Lógica NÃO(NOT)

A porta lógica NÃO, ou inversor, é o circuito que executa a função NÃO

O inversor executa a tabela verdade da função NÃO

Se a entrada for 0, a saída será 1; se a entrada for 1, a saída será 0

Represe ntaçã o

Entrada A Saída S

Porta NÃ O ( N OT)

Após um bloco lógico

Antes de um bloco lógico

Alternativa mente,

Porta Lógica NÃO(NOT)

Função NÃO E(NAND)

Composição da função Ecom a função NÃO, ou seja, a saída da função Eé invertida

Tabela verdade

Porta NÃO E(NAND)

A porta NÃO E (NE) é o bloco lógico que executa a função NÃO E, ou seja, sua tabela verdade

Representação

Porta NÃO E(NAND)

Como a porta E, a porta NÃO Epode ter duas ou mais entradas

Nesse caso, temos uma porta NÃO Ecom N entradas e somente uma sa ída

A saída será 0 se e somente se as N entradas forem iguais a 1; nos demais casos, a saída será 1

Função NÃO OU(NOR)

Composição da função OUcom a função NÃO, ou seja, a saída da função OU é invertida

Tabela verdade

Porta NÃO OU(NOR)

A porta NÃO OU (NOU) é o bloco lógico que executa a função NÃO OU, ou seja, sua tabela verdade

Representação

Porta NÃO OU(NOR)

Como a porta OU, a porta NÃO OUpode ter duas ou mais entradas

Nesse caso, temos uma porta NÃO OUcom N entradas e somente uma sa ída

A saída será 1 se e somente se as N entradas forem iguais a 0; nos demais casos, a saída será 0

Função OU Exclusivo (XOR)

A função OU Exclusivofornece

1 na saída quando as entradas forem diferentes entre si e

0 caso contrário

Tabela verdade

Porta OU Exclusivo (XOR) como Bloco Básico

Simbologia adotada

Outros símbolos utilizados

Porta OU Exclusivo (XOR) como Circuito Combinacional

Resumo dos Blocos Lógicos

Básicos No me Sí mbolo Gráfico Funçã o Algébrica Tabela Verdade

NÃ O(N OT) Inve rso r

Correspondência entre expressões, circuitos e tabelas verdade

Todo circuito lógico executa uma expressão booleana

Um circuito, por mais complexo que seja, é composto pela interligação dos blocos lógicos básicos

Veremos, a seguir, como obter as expressões booleanas geradas por um circuito lógico

Expressões Booleanas Geradas por Circuitos Lógicos

Seja o circuito:

Expressões Booleanas Geradas por Circuitos Lógicos

Vamos dividi-lo em duas partes (1) e (2)

No circuito (1), a saída S1 contém o produto

A.B, já que o bloco é uma porta E

Portanto, S1 = A.B

Expressões Booleanas Geradas por Circuitos Lógicos

No circuito (2), note que a saída S1 é utilizada como uma das entradas da porta OU

A outra entrada da porta OUcorresponde à variável C, o que nos leva à:

Expressões Booleanas Geradas por Circuitos Lógicos

Para obter a expressão final em relação às entradas A, B e C basta substituir a expressão S 1 na expressão de S, ou seja:

Expressões Booleanas Geradas por Circuitos Lógicos

Portanto, a expressão que o circuito executa é: S = (A.B) + C = A.B + C

Exercício

Escreva a expressão booleana executada pelo circuito

Solução

Exercício

Determinar a expressão booleana característica do circuito

Solução

Comentários