View
34
Download
2
Category
Preview:
Citation preview
LógicaSistemas para Internet
Mapas de Karnaugh
Professor Gilvan Maiochi
Introdução
Minimizar ou Simplificar uma função booleana é a operação mediante a qual se reduz ao mínimo o número de termos, resultando em economia do circuito a ela correspondente. Os métodos de aplicação mais frequentes na minimização de uma função ou expressão booleana são:
1. Método Algébrico
2. Método do Mapa de Karnaugh
3. Método de Quine-Mckluskey
Nosso objetivo na aula de hoje é aprender a utilizar o método do Mapa de karnaugh para a simplificação de circuitos.
O método algébrico já foi estudado como aplicação dos teoremas da Álgebra de Boole; Citarei apenas um exemplo, como lembrete, para possibilitar comparações futuras com o Mapa de Karnaugh.
Introdução
Seja minimizar a função
y = a((b + c') (b' + c)) + ab + (a' + b') (b + c')
Solução:y = a((b + c') (b' + c)) + ab + (a' + b') (b + c')
= a(bb' + bc + b'c' + cc') + ab + (a' b + a'c' + b'b + b'c')
= abc + ab'c' + ab + a'b + a'c' + b'c‘= ab + b'c' + a'b + a'c'= (a + a') b + b'c' + a'c'= b + b'c' + a'c'= b + c' + a'c'= b + c' (1 + a')= b + c'
Veremos que podemos transformar sentenças abertas (assunto da aula anterior) em proposições, usando expressões como “para todo”, “qualquer que seja”, “existe um”, etc.
Exemplos Consideremos a sentença aberta P(x) = x + 1 = 1,
podemos, a partir dela, formar as seguintes proposições:• Existe x pertencente a Z, de tal forma que x + 1 = 1• Para todo x pertencente a Z, x + 1 = 1
Existe x N tal que Z Para todo x Q, R Qualquer que seja o número natural ele é inteiro Existe um número primo par
Método do Mapa de Karnaugh
O mapa de Karnaugh é uma forma modificada de tabela-verdade que nos permite representar graficamente uma função booleana e, se for o caso, simplificá-la.
Mapa a uma Variável
No caso de uma variável, o mapa é formado por duas células que correspondem a cada um dos valores 0 e 1 que podem ser atribuídos à variável.
Esta tabela pode ser lida de uma das seguintes maneiras:
ou
onde atribui-se o valor 1 à variável não complementada (a) e o valor 0 à variável complementada (a').
0 1a
0 1a 0 1
0 1a a' a
Mapa a duas variáveisÉ formado por quatro células que correspondem às combinações binárias que podem ocorrer com estas variáveis. Os termos da função a ser representada devem ser escritos em ordem alfabética e, em todos os mapas de Karnaugh, a ordem em que entrarão as variáveis deve vir claramente anotada na parte superior esquerda.ab 0 1
0 00 10 Representação Binária1 01 11
ab 0 1
0 a'b' ab' Representação Literal1 a'b ab
ab 0 1
0 0 2 Representação Decimal1 1 3
Método do Mapa de Karnaugh
abc 0 1
00 000 10001 001 10111 011 11110 010 110
abc 0 1
00 a'b'c' ab'c'01 a'b'c ab'c11 a'bc abc10 a'bc' abc'
abc 0 1
00 0 101 2 311 6 710 4 5
Mapa a três variáveis
Método do Mapa de Karnaugh
abcd 00 01 11 10
00 0000 0100 1100 100001 0001 0101 1101 100111 0011 0111 1111 101110 0010 0110 1110 1010
abcd 00 01 11 10
00 a'b'c'd' a'bc'd' abc'd' ab'c'd'01 a'b'c'd a'bc'd abc'd ab'c'd11 a'b'cd a'bcd abcd ab'cd10 a'b'cd' a'bcd' abcd' ab'cd'
abcd 00 01 11 10
00 0 4 12 801 1 5 13 911 3 7 15 1110 2 6 14 10
Mapa a quatro variáveis
Método do Mapa de Karnaugh
Representação de uma Função Via Mapa de Karnaugh
Representemos, mediante o mapa de Karnaugh, a seguinte função na forma normal disjuntiva:
y = abc' + ab'c' + abc + a'b'c
Trata-se de uma função a três variáveis e o mapa a ser utilizado é:
Para representar a função através do mapa, colocamos o valor 1 nas células correspondentes a cada termo da função deixando as demais vazias. Assim:
abc 0 1
00011110
Representação de uma Função Via Mapa de Karnaugh
y = abc' + ab'c' + abc + a'b'c
abc 0 1
00 101 111 110 1
Representação de uma Função Via Mapa de Karnaugh
Representar a função
y = a'b'cd + ab'd + abc' + ac'd'
a quatro variáveis que, em três de seus termos, falta uma variável (não está na forma normal disjuntiva). Relembremos um teorema útil ao Mapa de Karnaugh
ab + ab' = aconforme aplicação das propriedades da álgebra booleana:
F = A . B + A . B'propriedade distributiva (evidenciando o elemento comum)
F = A . (B + B')propriedade dos complementos
F = A . 1propriedade da identidade (ou elemento neutro)
F = A
Representação de uma Função Via Mapa de Karnaugh
De acordo com o teorema ab + ab' = a, temos:
y = a'b'cd + ab'd + abc' + ac'd'
y = a'b'cd + ab'cd + ab'c'd + abc'd + abc'd' + abc'd' + ab'c'd'
y = a'b'cd + ab'cd + ab'c'd + abc'd + abc'd' + ab'c'd'
E, construindo o mapa correspondente, vem:
abcd 00 01 11 10
00 a'b'c'd' a'bc'd' abc'd' ab'c'd'01 a'b'c'd a'bc'd abc'd ab'c'd11 a'b'cd a'bcd abcd ab'cd10 a'b'cd' a'bcd' abcd' ab'cd'
abcd 00 01 11 10
00 1 101 1 111 1 110
Representação de uma Função Via Mapa de Karnaugh
Note-se que no caso de funções como y = a'bcd' + ab deve-se considerar todas as possibilidades de aplicação do teorema ab + ab' = a, ficando o mapa correspondente como se vê a seguir:
y = a'bcd' + ab
y = a'bcd' + abcd + abcd' + abc'd + abc'd'
abcd 00 01 11 10
00 a'b'c'd' a'bc'd' abc'd' ab'c'd'01 a'b'c'd a'bc'd abc'd ab'c'd11 a'b'cd a'bcd abcd ab'cd10 a'b'cd' a'bcd' abcd' ab'cd'
abcd 00 01 11 10
00 101 111 110 1 1
Representação de uma Função Via Mapa de Karnaugh
Na representação de uma função mediante o mapa de Karnaugh, deve-se buscar a forma mais simples de representação, considerando-se que uma função a duas variáveis pode ser representada em mapas para maior número de variáveis. Assim, a função y = ab tem as seguintes representações:
ab 0 1
01 1
abc 0 1
000111 110 1
abcd 00 01 11 10
00 101 111 110 1
Representação de uma Função Via Mapa de Karnaugh
Duas células que diferem em apenas uma variável são ditas adjacentes e podem ser combinadas pelo teorema ab + ab' = a. Num mapa de Karnaugh podemos ter células adjacentes, sem que tenham lados comuns.Exemplos:
ab 0 1
01 1 1
ab 0 1
01 a'b ab
abc 0 1
00 101 11110
abc 0 1
00 ab'c'01 ab'c1110
Representação de uma Função Via Mapa de Karnaugh
Exemplos:
abc 0 1
00 1011110 1
abc 0 1
00 ab'c'011110 abc'
abcd 00 01 11 10
0001 ab'c'd11 ab'cd10
abcd 00 01 11 10
0001 111 110
Representação de uma Função Via Mapa de Karnaugh
Exemplos:
abcd 00 01 11 10
0001 a'b'c'd ab'c'd1110
abcd 00 01 11 10
0001 1 11110
abcd 00 01 11 10
00011110 a'b'cd' ab'cd'
abcd 00 01 11 10
00011110 1 1
Simplificação de Funções Via Mapa de Karnaugh
Dada uma função representada em um mapa de Karnaugh, se encontrarmos termos em células adjacentes, podemos fazer uma simplificação. No mapa que representa a função:y = a'bc'd' + abc'd + a'b'cd + a'bcd + ab'cd'
abcd 00 01 11 10
00 a'bc'd'01 abc'd11 a'b'cd a'bcd10 ab'cd'
abcd 00 01 11 10
00 101 111 1 110 1a'cd
Podemos efetuar a simplificação, substituindo a'b'cd + a'bcd por a'cd. A operação é indicada agrupando-se os dois termos conforme mostra o mapa apresentado.
Simplificação de Funções Via Mapa de Karnaugh
Quando os termos a simplificar encontram-se em células nos extremos do mapa, indicamos conforme segue:
abcd 00 01 11 10
00 101 1 11110 1
a'bd'
b'c'd
Simplificação de Funções Via Mapa de Karnaugh
No mapa da função:y = a'bc'd' + a'bc'd + a'bcd + abc'dtemos:
abcd 00 01 11 10
00 101 1 111 110
Simplificação de Funções Via Mapa de Karnaugh
Lembrando que a função não simplificada é y = a'bc'd' + a'bc'd + a'bcd + abc'd, onde:
ab abcd 00 01 11 10 cd 00 01 11 10
00 1 00 101 1 1 01 1 111 1 11 110 10
y = a'bc' + abc'd + a'bcd y = bc'd + a'bc'd' + a'bcd
abcd 00 01 11 10
00 101 1 111 110
y = a'bd + a'bc'd' + abc'd
a'bc'bc'd
a'bd
Simplificação de Funções Via Mapa de Karnaugh
Transportando as representações anteriores para um único mapa, obtemos:
que é a função simplificada. Para simplificar ao máximo uma função torna-se necessário incluir o mesmo termo em diversos agrupamentos.
abcd 00 01 11 10
00 1
01 1 1
11 1
10
y = a'bc' + bc'd + a'bd
a'bc' bc'd
a'bd
Simplificação de Funções Via Mapa de Karnaugh
Vejamos agora o caso em que as células são adjacentes duas a duas.Simplifique a função
y = a'b'c + a'bc + ab'c + abc
O mapa correspondente é:
abc 0 1
0001 1 111 1 110
Simplificação de Funções Via Mapa de Karnaugh
e, temos duas maneiras diferentes para simplificar a mesma função, ou seja:
Considerando que as celas adjacentes no caso de ac e ac' diferem na variável a e no caso de bc e b'c diferem na variável b, podemos agrupá-las da maneira mostrada a seguir, ou seja:
a abc 0 1 bc 0 1
00 0001 1 1 01 1 111 1 1 11 1 110 10
a'cbc
b'c
ac
a abc 0 1 bc 0 1
00 0001 1 1 01 1 111 1 1 11 1 110 10
c
c
Simplificação de Funções Via Mapa de Karnaugh
Outros casos de simplificação:
ab abcd 00 01 11 10 cd 00 01 11 10
00 1 1 1 00 1 101 1 01 1 1 1 111 1 11 1 110 1 1 1 10 1 1
y = ab' + a'd' y = bd + b'd' + c'd
a'd'c'd
ab'
bd
b'd'
Simplificação de Funções Via Mapa de Karnaugh
Vejamos agora em que as células são adjacentes quatro a quatro:Seja o mapa de Karnaugh que representa a funçãoy = a'b'c'd + a'b'cd + a'bc'd + a'bcd + abc'd + abcd + ab'c'd + ab'cd
abcd 00 01 11 10
0001 1 1 1 111 1 1 1 110
abcd 00 01 11 10
0001 1 1 1 111 1 1 1 110
abcd 00 01 11 10
0001 1 1 1 111 1 1 1 110
y = cd + c'd = dc'd
cd
a'd
ad y = ad + a'd = d
Recommended