You are on page 1of 25

Sistemas Digitais

Minimizao de Funes: Mapas


de Karnaugh
Joo Paulo Baptista de Carvalho
(Prof. Auxiliar do IST)
joao.carvalho@inesc-id.pt

Minimizao de uma Funo

Trata-se de obter a expresso mnima de uma funo

A representao mnima depende do critrio utilizado:


usaremos como critrio o nmero de termos na
expresso e o nmero de literais nos termos

Presume-se a representao de uma funo a dois


nveis, isto numa das formas normais

Pode existir mais do que uma expresso mnima

A minimizao por utilizao dos teoremas possvel


(como vimos nas aulas anteriores), mas por vezes
difcil e carece de experincia

Pretende-se mostrar nesta aula que h mtodos


tabulares interessantes para simplificar funes
booleanas

Uke2010

Sistemas Digitais

Adjacncias e Mapas de Karnaugh (I)

Uma funo pode ser representada de vrias formas:

A expresso da funo pode ser


simplificada algebricamente:

Do mesmo modo que a representao de funes pode ser feita


indiferentemente de uma forma tabular ou com uma expresso
algbrica, o prprio processo de simplificao pode ser feito dos
dois modos

Uke2010

Sistemas Digitais

Adjacncias e Mapas de Karnaugh (II)


m

As linhas 6 e 7 permitiram por obter o termo AB por manipulao


algbrica: entre elas s a varivel C que varia, o que permitiu por
AB em evidncia
As linhas 4 e 6 permitiram por obter o termo AC por manipulao
algbrica: entre elas s a varivel B que varia, o que permitiu por
AC em evidncia

Uke2010

Sistemas Digitais

Adjacncias e Mapas de Karnaugh (III)


m

Podemos ento simplificar directamente a


funo por observao da tabela, associando
linhas em que a funo seja 1 e que difiram
apenas de uma varivel: No primeiro produto
associmos as linhas 6 e 7 que diferem
apenas na varivel C; no segundo associmos
4 e 6 que diferem apenas na varivel B

Destas linhas que diferem apenas de uma varivel, diz-se serem adjacentes.
claro que era bom, como aconteceu no primeiro caso, que todas as
posies adjacentes estivessem fisicamente encostadas. Mas, com 3
variveis, cada posio tem sempre 3 posies adjacentes e, na tabela,
impossvel colocar fisicamente uma linha encostada a outras trs.
Uke2010

Sistemas Digitais

Adjacncias e Mapas de Karnaugh (IV)

Esta nova forma de desenhar a tabela o Mapa de Karnaugh

Repare-se que para cada posio h 3


adjacentes:
A

BC
00
0
1 A3

01

11

10
A2

A1 P

A posio P tem como posies adjacentes a posio A1 (que


varia de P na varivel C), a posio A2 (que varia na varivel A), e
a posio A3 (que varia na B)
Repare-se que tudo se passa como se as posies laterais
extremas estivessem encostadas

Uke2010

Sistemas Digitais

Adjacncias e Mapas de Karnaugh (V)


m

Aplicando o Mapa de Karnaugh


funo do exemplo anterior
temos:
BC
00

01

11

10

0 0

1 1

AC
F=AB+AC
AB

Num mapa de Karnaugh so vlidas todas as


associaes entre 2 elementos adjacentes

Uke2010

Sistemas Digitais

Adjacncias e Mapas de Karnaugh (VI)

Outro exemplo de simplificao de uma funo de 3


variveis:

BC
00

01

11

10

0 1

1 1

Mas a expresso pode ser ainda mais simplificada:

Esta simplificao adicional poderia ser


retirada directamente do mapa, pois
verifica-se que os quatro 1s das pontas
so adjacentes: entre eles s C constante
Uke2010

Sistemas Digitais

Mapas de Karnaugh (4 variveis)

O Mapa de Karnaugh foi apresentado para 3 variveis


mas em teoria pode ser usado com qualquer nmero de
variveis
Na prtica, com mais de 6 variveis torna-se bastante
difcil, existindo mtodos mais adequados (que tambm
assentam nos princpios do mtodo agora apresentado)
O Mapa a 4 variveis constrise facilmente. A partir de um
Mapa de 3 variveis, replicase o quadro atravs de uma
reflexo num espelho
imaginrio:

Uke2010

Sistemas Digitais

A1A0
A3A2

Mapas de Karnaugh (4 variveis) - II

Preenchimento e agrupamentos vlidos de mintermos em


mapas de 4 variveis Exemplos:
00

01

11

10

00
4

12

13

15

14

01
11

11

CD 00
AB

01

11

10

00

01

11

10

BD

CD 00
AB

01

11

10

00

01

11

10

Uke2010

ACD

10

10

ABD

So vlidos os
agrupamentos
de 21 at 24
quadrados
adjacentes

AC
BCD

BC

ABCD

2n

Agrupamentos de
quadrados correspondem
eliminao de n literais

ACD

CD 00
AB

01

11

10

00

01

11

10

AD

ABC

Sistemas Digitais

10

Mtodo de Karnaugh

Exemplo:
AB

00 01 11 10
primeira vista pareceria
00 0
1
0
0
intuitivo comear a simplificao
01 0
1
1
1
pelo agrupamento dos quatro 1s
11 1
1
1
0
centrais de modo a eliminar
10 0
0
1
0
variveis...
...mas essa opo levaria obteno do termo BD, o qual
desnecessrio e no est presente na forma mnima da expresso
da funo. Todos os 1s que formam BD tambm pertencem a outros
agrupamentos indispensveis expresso da funo:

AB

CD

Nem sempre estas situaes so facilmente


detectveis. Para que o mtodo de Karnaugh seja
correctamente entendido e aplicado, torna-se
necessrio introduzir e aplicar um conjunto de conceitos
e procedimentos que apresentaremos de seguida
Uke2010

Sistemas Digitais

CD
00

01

11

10

00

01

11

10

11

Implicantes

Chama-se implicante de uma funo a um agrupamento de 1s que


satisfaz as regras da associao de mintermos (adjacncia e
associao de 2n mintermos)
Para funes das mesmas variveis, diz-se que uma funo F1
implica outra F2, quando, para todas as configuraes de entrada em
que a funo F1 vale 1, a funo F2 tambm vale 1.
Um termo de produto diz-se um implicante de funo sse essa
funo assumir o valor 1 para todos os mintermos que constituem
esse termo de produto
Ou seja, qualquer mintermo, ou agrupamento vlido de mintermos
um implicante da funo)

Uke2010

Sistemas Digitais

12

Implicantes Primos (IP)

Um termo de produto diz-se um implicante


primo (IP) se a remoo de um qualquer
literal desse termo de produto resulta num
termo de produto que no um implicante
da funo
Ou seja, um IP agrupamento vlido de
mintermos que no pode ser alargado
Exemplos:

Uke2010

Sistemas Digitais

13

Implicantes Primos Essenciais (IPE)

Um implicante primo de uma funo diz-se implicante


primo essencial se contm pelo menos um mintermo que
no est contido em nenhum outro implicante primo
Ou seja, um IPE um IP que contm pelo menos um
mintermo que no pode ser associado de outra forma
Exemplos:

Implicantes Primos

Implicantes Primos

Implicantes
Primos Essenciais

Implicantes
Primos Essenciais

Quadrado ou
mintermo
Essencial
Uke2010

Sistemas Digitais

14

Implicantes Primos (IP) e Implicantes


Primos Essenciais (IPE)

IMPLICANTE: Um termo de produto diz-se um


implicante de uma funo se e s se essa funo
assume o valor 1 para todos os mintermos que o
constituem

IMPLICANTE PRIMO: Um termo de produto diz-se um


implicante primo se a remoo de um qualquer literal
desse termo de produto resulta num termo de produto
que no um implicante da funo

IMPLICANTE PRIMO ESSENCIAL: Um implicante


primo de uma funo diz-se implicante primo essencial
se contm pelo menos um mintermo no contido em
nenhum outro implicante primo

Uke2010

Sistemas Digitais

15

Algoritmo de Minimizao de Karnaugh

O procedimento sistemtico para a obteno da


expresso simplificada de uma funo representada
num quadro de Karnaugh, corresponde execuo
dos 3 seguintes passos:

Passo 1: Identificar e seleccionar todos os implicantes/implicados


primos essenciais (IPEs)
a) Analizar cada mintermo/maxtermo
b) Para cada mintermo essencial encontrado assinalar o IPE correspondente
c) Repetir at que todos os mintermos/maxtermos tenham sido
analizados, OU j no existam mintermos/maxtermos que no
estejam includos num IPE

Passo 2: Caso existam mintermos/maxtermos que no foram


seleccionados no passo anterior, determinar o menor conjunto de
implicantes/implicados primos (IPs) que os contenham
Passo 3: Escrita da expresso simplificada como soma/produto de
todos os termos de produto/soma seleccionados nos passos 1 e 2.
Uke2010

Sistemas Digitais

16

Forma Normal/Mnima Disjuntiva

Exemplo de simplificao para obteno da forma normal/


mnima disjuntiva

Funes cuja simplificao apenas involve IPE

m1 e m6 so
quadrados essenciais

m1, m6, m12 e m13 so


quadrados essenciais

A expresso simplificada dada pela soma de todos os IPEs (o


passo 2 no foi necessrio)

Uke2010

Sistemas Digitais

17

Forma Normal/Mnima Disjuntiva

Exemplo de simplificao para obteno da forma normal/


mnima disjuntiva

Funes cuja simplificao involve IPEs e IPs


Q: Ser que possvel no existirem IPEs?

O conjunto de
implicantes primos no
essenciais que
completam a expresso
simplificada oferece
outras alternativas alm
das apresentadas

O conjunto de implicantes
primos essenciais nico;
m0 e m10 so quadrados
essenciais
Uke2010

Sistemas Digitais

18

Mtodo de Karnaugh Simplificao com


Indiferenas

Por vezes acontece que certas configuraes de


entradas nunca ocorrem numa funo lgica

possvel tirar partido desse facto para se tentar


minimizar ainda mais a expresso algbrica da funo

Vejamos atravs de um exemplo qual a metodologia a


utilizar nestas situaes:

Pretende-se obter uma funo que deve dar sada 1


apenas quando o nmero representado for mltiplo de
3, e que tem como variveis de entrada os quatro bits
de uma representao em cdigo BCD

Podemos fazer a tabela de verdade da funo


pretendida, utilizando como variveis de entrada A3, A2,
A1 e A0, representando os quatro bits do cdigo BCD

Uke2010

Sistemas Digitais

19

Mtodo de Karnaugh Simplificao com


Indiferenas (II)

Deteco de mltiplos de 3 em BCD: Tabela de verdade

BCD

A3

A2

A1

A0

Observaes

No mlt. de 3

No mlt. de 3

No mlt. de 3

Mltiplo de 3

No mlt. de 3

No mlt. de 3

Mltiplo de 3

No mlt. de 3

No mlt. de 3

Mltiplo de 3

No BCD

No BCD

No BCD

No BCD

No BCD

No BCD

Uke2010

Sistemas Digitais

No caso das
configuraes de entrada
que no so BCD, no
importante considerar o
valor da funo, uma vez
que as configuraes de
entrada respectivas
nunca ocorrem e,
portanto, o valor que a
funo teria nessa
situao indiferente

20

Mtodo de Karnaugh Simplificao com


Indiferenas (III)

Deteco de mltiplos de 3 em
BCD: Simplificao ignorando
a existncia de indiferenas

Deteco de mltiplos de 3 em
BCD: Simplificao
considerando a existncia de
indiferenas considera-se que
uma indiferena vale 1 quando
d jeito, e 0 nas outras
situaes
A3 A2

A expresso obtida considerando as


indiferenas muito mais simples

A1 A0
00

01

11

10

00

01

11

10

F = A3 A0 + A2 A1 A0 + A2 A1 A0

Tenha-se em conta que a funo descrita pela expresso obtida, deixou de


ter posies indefinidas. As configuraes de variveis de entrada
correspondentes as indiferenas que foram associadas com mintermos da
funo passaram a provocar sada 1 da funo. Aquelas no associadas
passaram a ter sada 0
Uke2010

Sistemas Digitais

21

Mapas de Karnaugh (5 variveis)


A obteno de mapas de karnaugh de 5 variveis faz-se a partir de
um mapa de 4 variveis da mesma forma que este se obteve a
partir de um mapa de 3 variveis. Assumindo A como varivel de
maior peso, temos:

CDE
AB
000 001 011 010 1 10 1 11 1 01 1 00
0

11

10

14

15

13

12

24

25

27

26

30

31

29

28

16

17

19

18

22

23

21

20

00
01
11
10

De notar que existem muitas


formas possveis e equivalentes
de desenhar e numerar o mapa

Para alm de todas as adjacncias vlidas no mapa de 4


variveis (em cada uma das metades) existem agora
adjacncias entre posies simtricas em relao ao eixo de
simetria vertical

Uke2010

Sistemas Digitais

22

Mapas de Karnaugh (5 variveis)


Exemplo de minimizao:
AB

00

01
11
10

X
1

1
9

24

25

16

17

1
1

11

10

14

15

1
1

27

26

30

19

18

22

Uke2010

AB

CDE
000 001 011 010 110 111 101 100

13

12

00

31

29

28

01

23

21

20

11

10

Invlido
IPEs:
1 devido a m18 e a m20
2 devido a m13
3 devido a m14
4 devido a m31
5 devido a m24

CDE
000 001 011 010 110 111 101 100

24

18

14

1
31

X
13

20

5
2

Sistemas Digitais

23

Simplificao atravs de Maxtermos (0s)

Do mesmo modo que se usam associaes de mintermos para obter


expresses em termos de somas de produtos (forma normal disjuntiva),
possvel associar maxtermos identificados por 0, obtendo expresses
em termos de produtos de somas (forma normal conjuntiva):

Recorde-se que, quando se lem somas


nos mapas de Karnaugh (ou nas tabelas) as
variveis que se mantm em 0 so lidas
afirmadas e as que se mantm em 1 so
lidas negadas

de notar que o facto de se representar a funo como um produto de


maxtermos na sua especificao, no significa que ela tenha de ser
simplificada em termos de uma expresso na forma de produto de
somas. De facto, nada nos impediria de fazer a simplificao atravs
dos 1s do mapa de Karnaugh...

Uke2010

Sistemas Digitais

24

Bibliografia

Arroz,G., Monteiro,J.C., Oliveira,A., Arquitectura de


Computadores, dos Sistemas Digitais aos
Microprocessadores, Captulo 2.3, 2 Edio, 2009
Mano,M., Kime,C. Logic and Computer Design
Fundamentals, Prentice Hall, seces 2.4,2.5
Srro,C. Sistemas Digitais: Fundamentos
Algbricos, IST Press, 2003 , seces 7.1 a 7.5

Uke2010

Sistemas Digitais

25