Simplificação Usando Mapa de Karnaugh

1

Simplificação Usando Mapa de Karnaugh

Um empreendimento Bairros Projetos didáticos Coordenado pelo Professor Roberto Bairros dos Santos.

Este trabalho mostra o método de simplificação de funções lógicas chamado Mapa de Karnaugh. Este é um método mais simples que a aplicação direta da álgebra de Boole.

Simplificação Usando Mapa de Karnaugh

2

Índice: 1. 2. 3. 4. 5. 6. 7. 8. 9. Introdução:............................................................................................................................................3 Base matemática:..................................................................................................................................4 Desenho do Mapa de Karnaugh: ..........................................................................................................5 Determinação dos grupos de simplificação: .........................................................................................7 Simplificação usando Mapa de Karnaught partindo da equação: .......................................................15 Simplificação usando Mapa de Karnaught partindo da Tabela Verdade:...........................................16 Usando as laterais na simplificação:...................................................................................................17 O grupo dos vértices:..........................................................................................................................18 Finalização: ........................................................................................................................................19

Simplificação Usando Mapa de Karnaugh

3

1.

Introdução:

A simplificação de uma função lógica tem por objetivo chagar a um circuito mais simples, usando menos componentes, por sua vez mais econômico. Uma forma de simplificar uma função lógica é usar diretamente os teoremas, postulados e identidades da álgebra de Boole, neste a operação de simplificação se torna bastante complicada, demorada e muitas vezes não dá certeza de que o técnico chegou ao menor circuito. O método do Mapa de Karnaugh é um método mais simples, pois se baseia em um gráfico chamado Mapa de Karnaugh, a construção do gráfico e a identificação das simplificações são um processo rápido e simples. Neste método o técnico pode desenhar o gráfico à partir de uma equação montada na forma de uma soma de produtos ou da tabela verdade. O método possui uma base matemática simples, mas que durante a aplicação fica totalmente transparente, tornando-se praticamente um trabalho de desenho e observação. O Mapa de Karnaugh é um método prático de aplicação em funções de até cinco variáveis, acima disto este método se torna pouco prático, sendo mais fácil, projetar o circuito usando microprocessadores. Nesta apresentação serão tratados os casos até quatro variáveis, uma vez que aplicar o método para cinco variável já requer um trabalho em três dimensões.

Simplificação Usando Mapa de Karnaugh

4

2.

Base matemática:

O mapa de Karnaugh irá facilitar a identificação dos pares de parcelas que possuam termos em comum a serem colocados em evidência e que ainda possam simplificar variáveis, como no exemplo abaixo: AB’+AB=Z(AB) A(B’+B)=Z(AB) A=Z(AB) Neste as duas parcelas possuem uma variável comum (variável A) e outra que aparece sem inversão em uma parcela e com inversão em outra parcela.

Simplificação Usando Mapa de Karnaugh

5

3.

Desenho do Mapa de Karnaugh:

O Mapa de Karnaugh é uma forma diferente de desenhar a tabela verdade, de tal forma, que no desenho, as linhas colocadas lado a lado, possuam somente uma variável com valor diferente. Vamos mostrar passo a passo a forma de desenhar o Mapa de Karnaugh partindo de uma tabela verdade de 16 linhas, 4 variáveis. Este mapa poderá ser usado para três ou duas variáveis também. Devemos salientar aqui que não existe uma única forma de desenhar o mapa de Karnaugh, vamos apresentar aqui uma alternativa, outras formas de usar e desenhar o mapa poderão ser encontradas em outros livros, no entanto, este método é um dos mais simples e práticos de ser aplicado. Vamos iniciar a partir de uma tabela verdade de 4 variáveis, acrescentando à esquerda uma coluna para indicar o número da linha, este número estará relacionado com o número binário formado pelos estados das variáveis de entrada DCBA.

Os valores da coluna Z dependerão da função dada. O Mapa de Karnought consiste em desenhar esta Tabela Verdade na forma de tabela onde em cada célula contenha todos os dados: Número da linha, estado das variáveis de entrada e estado da saída. A principal característica do Mapa de Karnought é que as células adjacentes tenham os estados das variáveis com somente um digito diferente. Por exemplo entre a linha “0” e a linha “1” somente o estado da variável “A” trocou de valor então estas duas linhas deverão ficar em células adjacentes. Já nas linhas “1” e “2” as variáveis “A” e “B” tem valores diferentes, logo, as células que representam estas linhas não podem ser desenhadas de forma adjacentes. Tendo o critério acima como princípio para desenhar o mapa de Karnough, existem várias formas de se conseguir o mesmo resultado, no entanto vamos adotar uma das possibilidades, que nos parece a mais interessante uma vez que em um único desenho terá Mapas para funções de duas, três ou quatro variáveis.

O primeiro passo para a construção do mapa de karnought é passar a coluna dos estados das variáveis de entrada para as células, tendo o cuidado de que duas células adjacentes tenham somente o estado de uma variável diferente das outras que a cercam. Conseguir com que aconteça isto em todas as células não parece fácil, no entanto, ao mapa ao lado tem esta propriedade.

Simplificação Usando Mapa de Karnaugh

6

Para identificar melhor as células estas são contém além dos estados das variáveis de entrada, o número da linha. Note que os números das linhas seguem uma seqüência binária e a cada dois dígitos invertem a seqüência.

Para manter a relação com o estado das variáveis de entrada, nas laterais do mapa podem ser colocados os estados das variáveis, esta indicação informa o estado da variável ao longo de toda a linha, ou coluna em que está colocada, por exemplo: Na primeira linha está marcado que o estado da variável “A” é zero, pois está barrado, isto ocorre nas células 0, 4, 12 e 8! Para simplificar ainda mais o mapa, este é desenhado sem os valores em binários, uma vez que tendo o número da linha, com esta indicação podemos levantar o estado das variáveis. Outra simplificação usada é indicar somente as colunas e linhas onde as variáveis de entrada assumem o valor “1”, onde não forem “1” só poderão ser zero! Assim, o mapa de Karnaught ao lado é o mapa padrão para 4 variáveis da função Z(DCBA).

Simplificação Usando Mapa de Karnaugh

7

4.

Determinação dos grupos de simplificação:

Para usar o mapa de Karnaught para simplificar uma equação ou tabela verdade, é preciso colocar dentro das células os valores da saída Z, para evitar confusão, os números das células não são escritos, pois partimos de que o mapa seja um mapa padrão. Assim, em cada célula é colocado o estado da variável Z, também é comum colocar somente o número “1” dentro das células pois aquelas células vazias serão consideradas zero. No primeiro momento vamos partir do mapa contendo os estados da saída, mais tarde vamos verificar como passar estes estados da tabela verdade ou da equação para o mapa de Karnaught, assim vamos começar a aprender a simplificação usando o mapa de Karnaught pelo final. Uma vez tendo o mapa padrão desenhado com o número “1” dentro das células, o trabalho de simplificação consistirá em determinar grupos de células adjacentes que possuam o número “1”. A princípio parece uma idéia confusa mas é um método muito simples. Por motivos didáticos vamos dividir os critérios para determinação dos grupos em duas etapas; básico e completa. Os critérios básicos para determinação dos grupos são: • Formar grupos com células contendo o número “1” • As células têm que ser adjacentes. • Os grupos deverão conter células adjacentes em grupos de 1, 2, 4, ou 8. • Grupo deverá conter o maior número possível de células. • Grupo deverá conter pelo menos uma célula que não pertença a nenhum outro grupo. • Os grupos podem ser entrelaçados.

Simplificação Usando Mapa de Karnaugh

8

Exemplo 1: Dado o mapa ao lado.

As células 8 e 12 formam um grupo, isto é indicado com uma marca ao redor destas células designada por G1. Uma vez determinado o grupo, isto indica que há possibilidade de simplificação, para determinar a variável a ser simplificada podemos usar o método numérico abaixo. Escrevemos o número das células do grupo em binário, um em baixo do outro, percorremos cada coluna e aquelas onde o valor da variável troca, indica que a variável daquela coluna é simplificada, indicamos isto com um “x”. Se o valor da coluna for sempre “1” então a variável continua, o valor for sempre “0” a variável continua mas com a barra da inversão. No nosso exemplo fica: Célula DCBA 08 1000 12 1100 D x B’A’ A função final seria: Z(DCBA) = DB’A’.

Simplificação Usando Mapa de Karnaugh Exemplo 2:

9

Neste caso temos quatro células adjacentes com o número “1”, assim ao invés de formarmos dois grupos de dois, formamos um grupo de quatro, pois, quanto maior o grupo melhor.

Para determinarmos a variável a ser simplificada vamos usar o método numérico: Célula variável DCBA 08 1 0 0 0 12 1 1 0 0 09 1 0 0 1 13 1 1 0 1 D X C’ X A função final fica sendo: Z(DCBA) = DC’. Note quanto maior o grupo, mais variáveis são simplificadas.

Simplificação Usando Mapa de Karnaugh

10

Exemplo 3: Existe um outro método, que é mais rápido mas não é tão simples quanto o método numérico. O método numérico deve ser usado no início ou em caso de dúvida, pois se torna muito trabalhoso para mapas maiores. O método que vamos mostrar é o método analítico e consiste em identificar olhando para as colunas e linhas das variáveis, quais as variáveis que trocam de valor dentro de todo o grupo. Assim, no exemplo anterior se olharmos para direita a partir do grupo podemos ver que as duas células de cima estão fora da região onde a variável “A” vale “0” (fora da marca) e as duas linhas de baixo estão na região onde a variável “A” vale “1” (dentro da marca), assim a variável “A” deve ser simplificada. Já com respeito a variável B, nas duas linhas de cima e nas duas linhas de baixo o valor do “B” é zero assim esta variável não é simplificada assumindo na solução o valor de B’ (barrado).

A equação final fica sendo: Z(DCBA) = DC’, como no caso anterior.

Simplificação Usando Mapa de Karnaugh

11

Exemplo 4: Neste caso temos seis células com valor “1”, observe que não é possível montar grupos de “1”. Este exemplo serve para mostrar que os grupos podem se entrelaçar, isto é, poderá existir célula pertencente a dois grupos diferente, no entanto para que o grupo seja válido este deve possuir pelo menos uma célula que não pertença a outro grupo.

A solução para a formação dos grupos é mostrada ao lado.

Usando o método numérico para determinar as variáveis que são simplificadas o resultado fica: G1: 12 1100 08 1000 13 1101 09 1001 DxB’x G2: 13 09 15 11 1101 1001 1111 1011 DxxA

Solução: Z(DCBA) = DB’+DA

Simplificação Usando Mapa de Karnaugh

12

Exemplo 5: Neste exemplo é mostrado um grupo com oito células, observe que todo o grupo fica dentro da região de somente uma variável, assim, será possível simplificar as outras três variáveis.

A figura ao lado mostra a solução para a formação do grupo. Neste caso o método analítico é mais simples de ser usado neste caso, observe que o grupo G1 fica totalmente dentro da região em que a variável D é igual a “1” assim a saída Z simplificada fica sendo: Z(DCBA)= D.

Simplificação Usando Mapa de Karnaugh

13

Exemplo 6:

Neste exemplo é mostrado que, uma questão p0de ter duas respostas. Ao examinar o mapa ao lado percebemos que os grupos formados pelas células (8, 9) e (15,7) não representam dificuldade, no entanto ao examinarmos a célula 13 notamos que a mesma pode formar grupo tanto com a cpelula 9 como com a célula 15.

Neste mapa pode haver duas soluções, uma vez escolhidas uma, por exemplo; a célula 13 formará grupo com a célula 15 então o grupo que a célula 13 poderia formar com a célula 9 não é legal, pois todas as células já pertencem a outros grupos. Se não houver nenhum outro critério, esta questão tem duas soluções, um critério para a escolha final seria pelo número de inversões que a solução possui, neste caso a célula 13 formaria um grupo mais econômico se fosse unida a célula 15.

Uma solução possível para a questão é: Z(CDBA) = DC’B’+CBA +DCA

Simplificação Usando Mapa de Karnaugh

14

Exemplo 7: No exemplo ao lado uma das células não consegue formar grupo com nenhuma outra.

Neste caso a célula solitária, não tem simplificação possível aparecendo na equação com todas as suas variáveis. Se for usado o método numérico, que é o melhor neste caso, o número da célula deverá ser escrito em binário, no local onde tem zero a variável aparecerá invertida e no local que não tem zero (aprece “1”) a variável aparece sem a barra.

13=

1 1 0 0 D C B’ A’

Z(DCBA)-D’BA’+D’CB+DCBA’

Simplificação Usando Mapa de Karnaugh

15

5.

Simplificação usando Mapa de Karnaught partindo da equação:

A simplificação de uma equação Booleana pode ser feita com maior rapidez e usando o Mapa de Karnaught. Para usar o mapa de Karnaught é preciso identificar em quais as células serão escrito os números “1”, para isto a equação tem estar escrita na forma de uma soma de produtos, os mintermos desta soma de produtos identificam o local no mapa onde estarão os números “1”. Para revisar, para passar uma equação na forma algébrica para uma soma de produtos escrita na forma dos mintermos, esta equação deverá estar escrita com todas as suas variáveis colocadas na ordem decrescente, vamos usar a ordem decrescente para tornar o mapa padrão aplicável a equações de 2, 3 e 4 variáveis. A determinação dos índices dos mintermos é feito substituindo as variáveis sem barra pelo número “1” e as variáveis com barra pelo número “0”, o número binário resultante desta operação em cada parcela da soma, representa índice do mintermos, observe o exemplo abaixo: Exemplo: Simplificação da equação usando o mapa de karnaught. Z(DCBA) = DCBA + DC’BA + DC’BA’=1111+1011+1010 = M15+M11+M10 Passando para o mapa de Karnaught, preenchendo as células 15, 11 e 10 com o número “1”:

Simplificando chegamos a dois grupos: G1 e G2. A equação final fica: Z(DCBA)= DBA+DC’B

Simplificação Usando Mapa de Karnaugh

16

6.

Simplificação usando Mapa de Karnaught partindo da Tabela Verdade:

Este é o que acontece normalmente na prática, o cliente que especifica um projeto a ser realizado usando circuitos digitais, informa as condições com que as saídas serão ligadas em função dos acionamentos das entradas, esta descrição deve ser colocada em uma tabela verdade, e, antes de ser implementada deve ser simplificada. Para simplificar uma tabela verdade, esta tem que ser escrita na forma de uma equação de soma de produto, caindo no caso anterior. É mais comum passar da tabela verdade diretamente para a equação escrita na forma dos mintermos. Para encontrar os mintermos partindo da tabela verdade devemos olhar para as linhas em que a saída apresenta o valor “1”, o valor em binário dos estados das variáveis é o índice dos mintermos. Observe que as variáveis deverão estar na ordem decrescente como no exemplo abaixo, e, para facilitar as linhas serão numeradas tendo estes números uma relação direta com aa expressões binárias das variáveis: Exemplo: Simplificação da tabela verdade usando o mapa de karnaught. Dada a tabela verdade abaixo: DCBA 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Z 1 1 0 0 1 1 0 0 0 0 0 0 1 0 0 0 Obs. <= <=

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Na tabela estão marcadas as linhas onde a saída Z assume o valor “1” a equação na forma dos mintermos fica sendo: Z(DCBA)= M0+M1+M4+M5+M12

<= <=

<=

A solução usando o mapa de Karnaught fica sendo: Z(DCBA)=D’B’+CB’A’

Simplificação Usando Mapa de Karnaugh

17

7.

Usando as laterais na simplificação:

As células colocadas nas laterais também apresentam a propriedade de terem somente um variável diferente, de forma que, é possível associar células colocadas nas laterais direita e esquerda assim como célula colocada na lateral superior e inferior, observe nos exemplos abaixo: Neste a simplificação fica: G1=D’CA ‘ G2=D’BA Z=D’CA’+D’BA

Neste caso a simplificação fica: G1=CA’ G2=DC’A

Neste caso a simplificação fica: G1=C’ Z(DCBA)=C’

Neste caso a simplificação fica: G1=A’ Z(DCBA)=A’

Simplificação Usando Mapa de Karnaugh

18

8.

O grupo dos vértices:

Existe um grupo especial formado pelos quatro vértices, este grupo só pode ser considerado se os quatro vértices possuírem o número “1”. Observe o exemplo abaixo. A simplificação deste grupo especial resulta em: G1=C’A’

Simplificação Usando Mapa de Karnaugh

19

9.

Finalização:

Agora é só praticar, aplique todos as regras estudas aqui nos exercícios abaixo e lembre-se: treine muito. 1) D’C’B’A’+D’CB’A’+D’C’B’A+D’CB’A+DCB’A+DC’B’A+DCBA 2) D’C’B’A’+D’C’B’A+D’C’BA+D’C’BA’+DC’B’A’+DC’B’A+DC’BA+DC’BA’+D’CBA+ DCBA 3) D’C’B’A’+D’CB’A’+DC’B’A’+D’C’BA’+DC’BA’+D’CBA+DCBA 4) D’C’B’A’+DC’B’A’+D’C’BA’+DC’BA’+D’CB’A+DCB’A+D’CBA+DCBA Solução: 1) D’B’+A’B+DCA 2) C’+BA 3) D’B’A’+C’A’ 4) CA+C’A’