Você está na página 1de 25

2009/10

Departamento de Engenharia Electrotcnica Prof. Adjunto: Manuel F.M. Barros

1 transstor - Bell Laboratories 1947

Museu Moores Law da Intel

[SISTEMAS DIGITAIS]
[Este conjunto de apontamentos constitui uma das referncias bibliogrfica principal de apoio cadeira de Sistemas Digitais. Teve como base de inspirao a sebenta de Sistemas Digitais do Departamento de Engenharia Electrotcnica da FCTUC da Universidade de Coimbra do Sr. Prof. Eduardo S Marta. A elaborao destes apontamentos teve o contributo dos meus colegas de trabalho Prof. Paulo Coelho e do Prof. Lus Almeida. Agradeo a todos os que com a apresentao de sugestes pretendam contribuir para uma melhor adequao da obra aos interesses educativos]

sistemas digitais

Tributo a George Boole


George Boole (1815 - 1864) George Boole nasceu em Lincoln - Inglaterra em 2 de Novembro de 1815, era filho de um sapateiro pobre. Herdou muito cedo o gosto pela construo de instrumentos pticos e o gosto pela matemtica. Outro dos seus interesses estava relacionado com as lnguas, tanto que aprendeu latim com um livreiro local. Com 12 anos de idade Boole tinha se tornado to bom em Latim que provocou uma histria polmica ao traduzir para Ingls uns versos do poeta latino Horcio. Aos dezasseis anos comeou a dar aulas a fim de ajudar seus pais, mas o seu ordenado no muito significativo. Como no tinha disponibilidade financeira para seguir a carreira militar e a advocacia, resolveu, pois, estudar para padre. Embora no tenha se concretizado esta ideia, os quatro anos em que se preparou para a carreira eclesistica no foram perdidos. Aprendeu Francs, Alemo e Italiano, que lhe seriam indispensveis para o seu futuro. Autodidacta, fundou aos 20 anos de idade a sua prpria escola que se dedicava ao estudo da Matemtica, que at a s era ensinada em boas escolas. Nesta poca Boole estudou os trabalhos de Laplace (Mcanique Cleste) e Lagrange, tomando anotaes que mais tarde seriam as bases para seu primeiro trabalho em matemtica. Em 1840 publicou o seu primeiro trabalho original e em 1844 foi condecorado com a medalha de ouro da Royal Society pelo seu trabalho sobre clculo de operadores. Em 1847 publica um volume sob o ttulo The Mathematical Analysis of Logic em que introduz os conceitos de lgica simblica demonstrando que a lgica podia ser representada por equaes algbricas. Este trabalho fundamental para a construo e programao dos computadores electrnicos iniciada cerca de 100 anos mais tarde. Na lgebra de Boole existem apenas trs operadores E, OU e NO (AND, OR, NOT). Estas trs funes so as nicas operaes necessrias para efectuar comparaes ou as quatro operaes aritmticas base. Em 1937, cerca de 75 anos aps a morte de Boole, Claude Shannon, ento estudante no MIT - Boston, USA - estabeleceu a relao entre a lgebra de Boole e os circuitos eletrnicos transferindo os dois estados lgicos (SIM e NO) para diferentes diferenas de potencial (tenso elctrica) no circuito. Actualmente todos os computadores usam a lgebra de Boole materializada em microchips que contm milhares de interruptores (transstores) miniaturizados combinados em portas (gates) lgicos que produzem os resultados das operaes utilizando uma linguagem binria. Boole morreu de pneumonia, mas honrado e famaso, em 1864. Cem anos depois, nasci eu. E aqui estou eu a divulgar as suas faanhas. Sem ele, talvez o computador que estou a usar neste instante fosse uma coisa muito diferente, ou talvez no existisse ainda. Quem sabe?

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

sistemas digitais

1. lgebra de Boole e Simplificao lgica

1.1- Fundamentos do projecto digital A lgebra de Boole


1.1.1 - Variveis e funes lgicas booleanas Os sistemas digitais assentam em circuitos (os circuitos digitais) que assumem, em cada instante, um de dois nicos estados (ou nveis) possveis. Se os designarmos por 0 e por 1 (veremos mais tarde que haveremos de preferir outras designaes para os estados, porm a essncia do problema mantm-se, independentemente das designaes), podemos utilizar o sistema de numerao binrio como suporte algbrico, e os cdigos binrios como suporte da informao processada e veiculada por esses circuitos e sistemas. Do ponto de vista algbrico teremos, naturalmente, que recorrer a uma lgebra especial, designada por lgebra de Boole, que faa uso dos smbolos 0 e 1 e que os utilize de forma sistemtica, com excluso de todos os outros. Antes de passarmos ao estudo dessa lgebra, porem, vamos apresentar informalmente alguns conceitos bsicos. O primeiro tem a ver com as designaes a dar a cada um dos smbolos 0 e 1. Designa-se-mos por quantidades booleanas simples. E aos conjuntos ordenados destes smbolos como, por exemplo, em (0, 1, 1, 0, 0, 1), damos a designao de quantidades booleanas gerais. Varivel lgica (ou de Boole, ou binria) uma varivel que tem por domnio 2 valores lgicos distintos, normalmente representados pelos smbolos 0 e 1. Funo lgica (ou de Boole, ou binria) uma funo que tem por contradomnio o conjunto lgico [0, 1]. 1.1.2 Funes ou operaes lgicas elementares: - complementao (ou negao, ou inverso) - interseco (ou produto lgico) - reunio (ou soma lgica) Operadores lgicos elementares: Inversor (NOT)
A
Manuel F.M. Barros

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

ou

F(A) = A

Operador E (AND)
A

Operador OU (OR)
A B A+B
Pgina

A B

A.B

Departamento de Engenharia Electrotcnica/Informtica

sistemas digitais
Tabela - PORTAS LGICAS ELEMENTARES AND NOT NAND
A+B
A B A.B

Nome Smbolo Tabela de Verdade A B 0 0 0 1 1 0 1 1


A B

OR

NOR
A+B

XOR
A B

A B

A.B

A B

A+B

Expresso A+B 0 1 1 1

Expresso A.B 0 0 0 1

Expresso
A 1 1 0 0

Expresso
A.B 1 1 1 0

Expresso
A+B

Expresso

1 0 0 0

A+B 0 1 1 0

Nota:
Ao longo deste texto vamos tambm se representa a negao pela seguinte notao: ex: A, em alternativa ao habitual trao: Exemplo: A .

1.1.3 - Expresses lgicas As expresses lgicas constituem um dos processos de descrever funes lgicas (outros processos: tabelas de verdade, mapas de Karnaugh). Expresso lgica (ou de Boole ) um conjunto de variveis e constantes lgicas ligadas entre si pelos sinais das funes lgicas elementares. Exemplos: F (A,B,C) = A.B+C F (A,B,C) = 0 + A . B + C. 1 Duas expresses lgicas so complementares se uma delas for igual a l quando a outra for igual a 0, e vice-versa. Duas expresses lgicas so equivalentes quando uma delas s for igual a l quando a outra tambm for igual a 1, e igual a 0 quando a outra tambm for igual a 0. Duas expresses lgicas so duais quando de uma se pode obter a outra: - transformando todos os . em + , - transformando todos os + em . , - transformando todos os 0 em l , - transformando todos os l em 0 , - e mantendo as ocorrncias das variveis. Exemplo: 1.A +B.C +0 dual de (0+A).(B+C).1

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

sistemas digitais No existe nenhuma relao geral entre os valores lgicos de expresses lgicas duais: podem ser ambas iguais a 1, ambas iguais a 0, ou uma igual a l e outra a 0. Mas as identidades lgicas duais tm a propriedade de que quando uma verdadeira a outra tambm o . 1.1.4 - Representao de Circuito Lgico Dada uma equao Booleana qualquer, possvel desenhar-se o circuito lgico que a associado. O circuito lgico composto das portas lgicas relacionadas s operaes que so realizadas sobre as variveis de entrada. Os resultados das operaes sadas das portas lgicas so conduzidos por fios, os quais, no desenho, so representados por linhas simples. Exemplo 1: A figura seguinte mostra o circuito lgico para a equao

Exemplo 2: Dado o seguinte diagrama ou circuito lgico pode-se obter a equao F


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

C.B D

Exemplo 3: Sistema avisador de cinto de segurana de um automvel (retirado de Digital design Frank Vahid) Objectivo: Desenhar um circuito para activar o sinal de aviso Sensores: S=1: cinto de segurana colocado correctamente K=1: chave de ignio introduzida P=1: condutor sentado Capturar a equao booleana: Condutor est sentado e cinto de segurana no est colocado e a chave est inserida W(P, K, S) = P AND NOT(S) AND K Converter a equao para circuito:

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

sistemas digitais 1.1.5 - Formas algbricas das expresses lgicas H 4 formas das expresses lgicas que tm um interesse particular: - forma cannica soma de produtos - forma cannica produto de somas - forma mnima soma de produtos - forma mnima produto de somas Diz-se que uma expresso lgica est na forma soma de produtos quando a expresso lgica constituda por somas lgicas de produtos lgicos (estes produtos so tambm designados por termos). Exemplo:

A.B.C+B.D+A.C.D
Diz-se que uma expresso lgica est na forma produto de somas quando a expresso lgica constituda por produtos lgicos de somas lgicas (estas somas so tambm designadas por factores). Exemplo: (A + B + D) . (B + D) . (A + C + D) . (A + D) Formas cannicas As formas cannicas so teis na anlise de circuitos lgicos na simplificao de funes lgicas, a partir delas que se procede implementao de circuitos lgicos com componentes MSI e LSI. Diz-se que uma expresso lgica est na forma cannica soma de produtos quando a expresso lgica constituda por somas lgicas de produtos lgicos que contm todas as variveis (da funo). Estes produtos so tambm designados por mintermos. Exemplo: X=A.B.C+A.B.C+A.B.C Diz-se que uma expresso lgica est na forma cannico produto de somas quando a expresso lgica constituda por produtos lgicos de somas lgicas que contm todas as variveis (da funo). Estes produtos so tambm designados por maxtermos. A forma cannica produto de somas tambm designada por produto de somas desenvolvidas. Exemplo: X=(A+B+C).(A+B+C).(A+B+C) Formas mnimas a partir das formas mnimas que se procede implementao de circuitos lgicos com 'portas lgicas' (gates) discretas dado que conduzem normalmente a implementaes mais simples.
Manuel F.M. Barros Departamento de Engenharia Electrotcnica/Informtica Pgina

sistemas digitais H vrias definies possveis para as formas mnimas, de entre as quais: - a que contm o menor nmero de literais - a que contm o menor nmero de termos / factores - aquela em que o somatrio do nmero de termos/factores e de literais mnimo. Vamos adoptar a ltima definio. Assim: Diz-se que uma expresso lgica est na forma mnima soma de produtos quando a expresso lgica constituda por uma soma de produtos tal que o somatrio do nmero de produtos e do nmero de literais mnimo.
Exemplo:

F(A,B,C,D)= A.B.C.D+B.C Diz-se que uma expresso lgica est na forma mnima produto de somas quando a expresso lgica constituda por um produto de somas tal que o somatrio do nmero de somas e do nmero de literais mnimo.
Exemplo:

F(A,B,C)= (B+C).(B+C).(A+C) A minimizao das implementaes de funes lgicas sempre um ponto obrigatrio do projecto de sistemas digitais. 1.1.6 - Postulados e teoremas da Algebra de Boole X=0 0.0=0 0 . 1 = 1. 0 = 0 1+1=1 0 = 1 X=1 1.1=1 0+1=1+0=1 0+0=0 1 = 0

Tabela - POSTULADOS, PROPRIEDADES E TEOREMAS DA LGEBRA DE BOOLE POSTULADOS Elemento Neutro Elemento absorvente Idempotncia Complemento Dupla negao Complemento duma Expresso 1 3 5 7 9 11 OU / OR / (+) E / AND / (.) 2 4 6 8 10 12

A+0=A A+1=1 A+A=A A+A=1 A=A S=A+B => S=(A+B) OU / OR / (+)

A.0=0 A.1=A A.A=A A.A=0 A=A S=A.B => S=(A.B) E / AND / (.)

PROPRIEDADES Comutativa Associativa Distributiva


Manuel F.M. Barros

13 15 17

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

14 16 18

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


Pgina

Departamento de Engenharia Electrotcnica/Informtica

sistemas digitais

TEOREMAS Lei da Absoro Lei do termo/factor menor Lei de De Morgan Teorema da Adjacncia lgica 19 21 23 25

OU / OR / (+) A+A.B=A A+A.B=A+B (A+B)=A . B A.B+A.B=A


20 22 24 26

E / AND / (.) A.(A+B)=A A.(A+B)=A.B (A.B)=A + B (A+B).(A+B)=A

*Legenda: A = A = NOT(A) = negao A

Complemento de funes lgicas - Teorema de De Morgan O primeiro teorema de De Morgan diz que a negao de um produto (lgico) equivale soma (lgica) das negaes de cada varivel do referido produto.: O segundo teorema o dual ( i.e., o espelho) do primeiro, ou seja, a negao da soma (lgica) equivale ao produto das negaes individuais das variveis:

1.1.7 - Simplificao de expresses lgicas custa dos teoremas da lgebra de Boole Na simplificao de expresses lgicas custa dos teoremas da lgebra de Boole procura-se detectar partes da expresso que sejam simplificadas por aplicao dos teoremas. Repete-se o processo at que j no h sub-expresses susceptveis de serem simplificadas. Como se depreende, no h garantia de que a expresso finalmente obtida esteja realmente minimizada. Exemplos de aplicao Exemplo l F = C . D + A . B. C + B . C . D Por aplicao da lei da absoro F= C . D + A . B . C Exemplo 2 F =A. B. C+ A. B .C +A.B. C +A.B.C F=A.B+A.B Para aplicar o teorema da adjacncia lgica, procuram-se os termos/factores que difiram apenas em uma varivel, ocorrendo na forma directa num dos termos/factores e na forma de complemento no outro termo/factor.

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

sistemas digitais Exemplo 3 F =A. B + B .E. F +A. C. D + B. C. D = ? Resoluo: pela lei distributiva: F = A . B + B . E . F + C . D . (A + B) e pela lei de DeMorgan: F = A . B + B . E . F + C . D . (A B) e pela lei do termo/factor menor F= A . B + B . E . F + C . D Para aplicar lei do termo/factor menor procuram-se os termos/factores includos na forma de complemento em outros termos factores

1.2 - Tabelas de verdade


As tabelas de verdade constituem outro processo de descrever as funes lgicas. A sua utilidade resulta: - da facilidade com que se obtm a partir da formulao verbal da funo a implementar - da facilidade com que se obtm a partir delas expresses algbricas das funes nas formas cannicas - por constiturem outro ponto de partida para mtodos grficos e tabulares de simplificao - por ser inclusivamente possvel a partir delas passar directamente implementao de funes lgicas com certos componentes MSI e LSI. Uma tabela de verdade uma tabela em que se apresentam todas as combinaes possveis das variveis da funo juntamente com os correspondentes valores assumidos pela funo para cada uma dessas combinaes. Exemplo: A tabela de verdade seguinte descreve uma funo lgica F(A,B, C) de 3 variveis A, B, e C: A B C F 0 0 0 0 0 0 1 1 Nota: 0 1 0 1 por Se definir cada 0 1 1 0 combinao da 1 0 0 0 tabela de verdade 1 0 1 0 Tabela de 1 1 0 1 Verdade 1 1 1 0

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

sistemas digitais A tabela indica que a funo lgica F(A, B, C) assume o valor lgico 0 para as combinaes: A.B.C , A.B.C , A.B.C , A .B.C e assume o valor lgico l para as combinaes: A.B.C , A.B.C e A.B.C e A.B.C

Da tabela de verdade pode obter-se facilmente a expresso lgica da funo na forma cannica soma de produtos. Para o caso do exemplo acima: F (A , B , C) = A. B.C + A.B.C + A .B .C E pode obter-se com igual facilidade a expresso lgica da funo na forma cannica produto de somas. Para o caso do exemplo anterior: F(A , B , C) = (A + B + C) . (A + B + C) . (A+ B + C) . (A + B + C) . (A + B + C)

Nota:
A forma cannica produto de somas corresponde soma de todas as combinaes que do o valor lgico 0 na funo. S neste caso, a cada combinao aplica-se a lei de De Morgan. Exemplo: A combinao (0,0,0) ou corresponde a um 0 em F. Aplicando a lei de Morgan, ao termo = A+B+C

Na seco seguinte veremos que tambm fcil preencher mapas de Karnaugh (a principal ferramenta grfica de simplificao de funes lgicas) a partir de tabelas de verdade. Construo de tabelas de verdade (a) Construo da tabela de verdade a partir da formulao verbal Exemplo: Pretende-se construir a funo F(X,Y,Z) que tenha o valor 1 sempre que o nmero de 1s nas variveis de entrada X, Y e Z seja um nmero mpar.

(b) Construo da tabela de verdade a partir de uma expresso lgica Exemplo:


Manuel F.M. Barros Departamento de Engenharia Electrotcnica/Informtica Pgina

sistemas digitais Considerando a seguinte funo F(X,Y,Z) = X+YZ desenhe a tabela de verdade.

.Note: Este processo poder tornar-se muito morosa para expresses mais complexas 1.2.1 Processo de desenho com lgica combinatria 1 Capturar a funo: Criar uma tabela de verdade ou equaes, o que for mais natural para o problema dado, para descrever o comportamento desejado da lgica combinatria. Converter para equaes: Este passo s necessrio se a funo foi capturada por tabelas de verdade em vez de equaes. Criar uma equao para cada sada. Simplifique as equaes se for necessrio. Implementar um circuito baseado em portas: para cada sada criar o circuito correspondente equao de sada.

Exemplo: Problema: Detectar trs uns consecutivos duma entrada com 8 bits: abcdefgh 00011101 output= 1 11110000 output= 1 10100011 output= 0 Passo 1. Capturar a a funo pela tabela de verdade ou equao? A tabela de verdade demasiado grande 2^8 = 256 linhas. Equao: criar termos para cada possvel caso de 3 uns (1s) consecutivos y = abs + bcd + cde + def + efg +fgh Passo 2. Converter a equao No necessrio j est feito. Passo 3. Implementar o circuito com portas lgicas:

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

sistemas digitais

1.3

Mapas de Karnaugh

1.3.1 - Mapas de Karnaugh para funes de 3, 4 e 5 variveis Os teoremas da lgebra de Boole nem sempre constituem a ferramenta mais conveniente para a minimizao de expresses lgicas. Veremos que dos mtodos alternativos os mapas de Karnaugh so um dos mais convenientes para utilizao manual. Os Mapas de Karnaugh constituem outra representao para as funes lgicas. Tm especial utilidade por permitirem obter de forma quase totalmente sistemtica e relativamente expedita as expresses mnimas das funes lgicas.
O Mapa de Karnaugh para uma dada funo consiste de um quadro com tantas clulas quantos

os possveis mintermos da funo, em que as clulas so dispostas de forma a possibilitarem uma aplicao mecnica do teorema da adjacncia lgica (os mintermos a que possvel aplicar o teorema da adjacncia lgica ficam colocados em clulas "adjacentes"). Ora pode-se demonstrar que quando o ponto de partida a forma cannica soma de produtos o teorema da adjacncia lgica o nico necessrio para alcanar a forma mnima - assim, o mapa de Karnaugh permite a minimizao atravs da deteco grfica de mintermos adjacentes.

O Mapa de Karnaugh para uma funo de 3 variveis A, B e C poderia ser: B A C A funo representada no Mapa de Karnaugh inscrevendo um l nas clulas correspondentes aos mintermos que fazem parte da expresso da funo e inscrevendo um 0 nas clulas correspondentes aos mintermos que no fazem parte da expresso da funo. Seja por exemplo a funo cuja expresso algbrica dada a seguir na forma cannica soma de produtos: F(A,B,C) = A.B.C + A.B.C + A.B.C A sua representao no Mapa de Karnaugh acima seria: B 0 0 1 0 C Examinando a expresso da funo pode verificar-se que possvel aplicar o teorema da adjacncia lgica aos dois ltimos termos, A. B . C + A . B . C = B . C
Manuel F.M. Barros Departamento de Engenharia Electrotcnica/Informtica Pgina

0 0

1 1

10

sistemas digitais Observando o Mapa de Karnaugh verifica-se que aqueles dois termos correspondem aos ls colocados em clulas "adjacentes", e que a simplificao pode ser assinalada "agrupando" os ls como se ilustra a seguir: B A 0 0 1 0 C A expresso simplificada pode agora "ler-se" directamente do Mapa de Karnaugh: ao l isolado, que no foi possvel "agrupar" com outro(s), corresponde o termo: A . B . C e ao "par" de ls corresponde o termo B . C A expresso "simplificada" , portanto (na forma mnima soma de produtos): F(A , B , C) = A . B . C + B . C No Mapa que temos vindo a utilizar como exemplo a correspondncia clulas-mintermos , pois, a que se ilustra a seguir: B A A.B.C A.B.C A.B.C A.B.C A.B.C A.B.C A.B.C A.B.C C So obviamente possveis outras correspondncias clulas-mintermos. A nica condio a cumprir a de que essa correspondncia seja tal que fiquem colocados em clulas geometricamente "adjacentes" mintermos aos quais seja aplicvel o Teorema da Adjacncia Lgica. S deste modo ser possvel a aplicao "mecnica" desse teorema. 0 0 1 1

Notar que, usando a conveno de que a uma varivel negada se faz corresponder o smbolo 0 e que a uma varivel na forma directa se faz corresponder o smbolo 1, podemos representar os mintermos por um cdigo binrio. E que, fazendo corresponder aos nmeros do cdigo binrio os respectivos equivalentes decimais, podemos numerar os mintermos como se ilustra a seguir: A.B.C A.B .C A .B.C A .B .C
000 010 100 110 0 2 4 6

A.B.C A.B .C A .B.C A .B .C

001 011 101 111

1 3 5 7

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

11

sistemas digitais Deste modo, podemos numerar as clulas dos Mapas de Karnaugh e atribuir, nmeros (de ordem) s representaes dos mantermos nas Tabelas de Verdade, o que facilita o preenchimento daqueles a partir destas. A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 F ... ... ... ... ... ... ... ...

0 1 2 3 4 5 6 7

B
0 1 5 3 7 2 6

C Mapas para funes de 2, 3, 4 e 5 variveis Um Mapa de Karnaugh para uma funo de 3 variveis requer 8 clulas, uma para cada termo desenvolvido (mintermo) possvel - 23= 8. Um Mapa de Karnaugh para uma funo de 2 variveis ter 22 = 4 clulas, um Mapa de Karnaugh para uma funo de 4 variveis ter 24 = 16 clulas, etc.
B
2 variveis 3 variveis

A C

C 4 variveis B A D C C

E 5 variveis

E B

B A

A D
Manuel F.M. Barros

D
Pgina

Departamento de Engenharia Electrotcnica/Informtica

12

sistemas digitais Grupos de adjacncia e simplificao dos termos At agora considermos apenas a simplificao derivada de agrupar 2 clulas adjacentes, por aplicao directa do teorema da adjacncia lgica. Podem no entanto existir grupos de adjacncia com mais clulas, que levam a simplificaes maiores: por exemplo, num mapa para 4 variveis podem existir grupos de adjacncia com 2, 4 e 8 clulas.

Um grupo de adjacncia um grupo de mintermos que mantm ocorrncias idnticas de uma parte das variveis, ao passo que as restantes tomam todas as possveis combinaes de ocorrncias.

Por exemplo, o grupo A. B. C. D, A. B. C. D, A. B. C. D, A. B. C. D mantm ocorrncias idnticas de A e D, do mesmo passo que inclui todas as combinaes possveis das ocorrncias de C e D. Considerando a soma lgica dos mintermos do grupo, podemos aplicar a propriedade distributiva: F (A , B , C, D) = A . B. C . D + A . B. C. D + A . B . C. D + A . B . C . D = A . D . ( B. C + B. C + B . C + B . C) Notando que dentro dos parntesis est a soma lgica de todos os mintermos de uma funo das variveis B e C, temos F (A , B , C, D) = A . D . 1 = A . D E, de uma maneira geral, a soma do grupo de mintermos que constituem o grupo de adjacncia equivalente ao termo obtido tomando as variveis com ocorrncias idnticas e suprimindo todas as outras.

Exemplos de grupos de adjacncia de 2 clulas em mapas de 4 variveis:


C A. B. D

1
A B. C. D

1 1 1 1
D B

1
A. B.C

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

13

sistemas digitais Exemplos de grupos de adjacncia de 4 clulas em mapas de 4 variveis:


B. C C C A.B

1 1 1 1
A

1 1 1 1
D

B A D B.D

A.D

1 1
A D

1 1

1
B A

1
B

1
D

e em mapa de 5 variveis:
E C E C

1 1
D

B A

1 1
D

B. C.D

Exemplos de grupos de adjacncia de 8 clulas em mapas de 4 variveis:


C C

1 1 1 1
D

1 1 1 1

1 1 1 1
B A B

1 1 1 1
D

1.3.2 - Leitura de mapas de Karnaugh na forma mnima soma de produtos Porventura a utilizao mais comum (se bem que no a nica) dos mapas de Karnaugh a obteno da forma mnima soma de produtos (FMSP) para uma funo.

Para chegar a um processo sistemtico de obteno da FMSP vamos comear por definir grupos [de adjacncia] primrios :

Um grupo de adjacncia diz-se primrio se no est totalmente includo em outro grupo maior.
Manuel F.M. Barros Departamento de Engenharia Electrotcnica/Informtica Pgina

14

sistemas digitais

Exemplo: O grupo n2 no primrio, pois est totalmente includo no grupo n3.


C
Grupo n 2

A. B. C

A
Grupo n 1

1 1 1 1
D

1 1

B
Grupo n 3

B.C

A. B.C

Os grupos ns l e 3 so primrios bem claro que um termo relativo a um grupo no-primrio no deve aparecer na FMSP, uma vez que os ls por ele "representados" podem ser representados pelo termo mais simples correspondente a um (ou o ) grupo primrio que o inclua. Por outras palavras, na FMSP s aparecem termos correspondentes a grupos Primrios Resta o problema de escolher quais os grupos primrios que formam a FMSP. Cada clula l deve estar includa em pelo menos um dos grupos primrios escolhidos. Haver muitas vezes ls que esto includos em apenas um grupo primrio: Um grupo primrio diz-se essencial se incluir uma ou mais clulas 1 que no esto includas em qualquer outro grupo primrio. Tambm bem claro que todos os grupos primrios essenciais devem estar includos na FMSP. Mas nem sempre a FMSP consta apenas de grupos primrios essenciais: ser esse o caso se aps remoo dos ls contidos em grupos primrios essenciais subsistirem um ou mais ls. EXEMPLO: Grupos primrios essenciais (s 1) C 1 1 1 D 1 1 1 B

l tentativa de extraco dos restantes ls C 1 A D 1 1 1 B


B. C. D

2 tentativa de extraco dos restantes ls


A. B. D

B. C.D

C 1 1 1 1 B
B. C. D

1 1
A. C

A D

Um raciocnio simples permite estabelecer que a 2 tentativa fornece j a FMSP: claramente, os 4 ls restantes (depois da remoo do grupo primrio essencial) no podem ser agrupados num grupo de 4, nem num grupo de 4 mais um grupo de 2, pelo que por ordem de simplicidade decrescente a melhor hiptese a seguir a de 2 grupos de 2. Este precisamente o agrupamento efectuado na 2 tentativa.

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

15

sistemas digitais Se bem que o processo de obteno da FMSP a partir do mapa de Karnaugh no seja inteiramente sistemtico, podem delinear-se os passos para um mtodo a seguir: l - Identificar no mapa os grupos que possvel formar, no omitindo nenhum dos maiores. 2 - Dos grupos identificados, manter e marcar ("rodear") apenas os primrios. NESTE PONTO, VERIFICAR: * se todos os ls esto includos ? * no h grupos maiores que por lapso ainda falta identificar ? * por lapso no se tero marcado grupos no primrios (isto , totalmente includos dentro de outros grupos maiores) ? 3 - Dos grupos primrios, salientar os essenciais (p.ex. distinguindo com asteriscos as clulas essenciais - as que s pertencem a um grupo primrio) 4 - "Extrair" os termos correspondentes aos grupos primrios essenciais. 5 - Se depois de removidos os ls includos nos grupos primrios essenciais ainda restarem ls no mapa, encetar um processo de tentativa e erro para minimizar os termos que representam esses l s restantes 5.1 - Comear por identificar quais os grupos maiores que possvel formar com os ls restantes. 'Extrair' esses grupos (notar que se isso simplificar os termos que se esto a extrair, devem ser utilizados - para formar grupos maiores - os ls j extrados em passos anteriores). 5.2- Como o nmero de l s restantes reduzido, geralmente fcil ver qual o melhor nvel de simplificao dos l s que ficaram depois do passo 4. Assim que se chegar a urna soluo com esse nvel de simplificao d-se por concluda a minimizao.
EXEMPLO:

Grupos primrios
(h dois grupos essenciais)

l s restantes

H 3 l s restantes e no h hiptese de grupos de 4: a simplificao maior possvel a de 2 grupos de 2, o que se consegue do modo seguinte: C B 1 A D 1 1 B

C 1 1 1 1 1 1 1 1 D B 1 A D

C 1 1

NOTA: se no fosse possvel cobrir os 3 ls restantes por meio de 2 grupos de 2, teramos de ensaiar a seguir a hiptese de l grupo de 2 e l grupo de 1,....... e por assim diante.

Geralmente, ao resolver um problema de minimizao no se explicitam todos os passos indicados, passando-se por exemplo directamente aos grupos primrios sem identificar todos os grupos menores.

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

16

sistemas digitais 1.3.3 - Condies indiferentes (Don't care conditions ) H funes lgicas para as quais certas combinaes das variveis de entrada nunca podem ocorrer; tambm surgem casos em que para determinadas condies de entrada (que podem ocorrer) as sadas do circuito simplesmente no so utilizadas.
Exemplo de combinao de entrada que no pode surgir Num tanque de lquido os sensores l e 2 ficam a l quando molhados. A combinao S2=1, Sl =0 nunca surge.

Sensor 2

S2 S1

Sensor 1

Para esta combinao de entrada as sadas so indiferentes - isto , a funcionalidade do circuito no afectada pelos valores que as sadas possam ento tomar. H ento completa liberdade para estabelecer valores para as sadas relativas a essas combinaes, de acordo com o que seja mais vantajoso para a simplificao do circuito. Para frisar esse facto, os valores indiferentes das sadas representam-se (numa tabela de verdade ou num mapa de Karnaugh) por X ou ento por d (do ingls don't care ). Num mapa de Karnaugh, o procedimento a Tomar em relao aos Xs o seguinte: - se tomar um (ou mais) X como l resultar na compactao de um termo necessrio para extrair alguns dos ls do mapa, o X tomado como l. - caso contrrio, o X tomado como 0.
EXEMPLO:

S um dos Xs que tomado a l


B.C

B 0 1 0 1 0 X X 1 C
B. C

1.3.4 - Mapas reduzidos (Variable-entered maps ) Os mapas reduzidos (mapas "VEM", de Variable-entered maps ) so mapas de Karnaugh em que o nmero de clulas uma potncia de 2 inferior a 2n, sendo n o nmero de variveis da funo a representar. Para que o mapa seja reduzido introduzem-se nas clulas, para alm de 0s, ls e eventuais Xs, (uma ou mais) variveis lgicas da funo ou mesmo expresses das variveis da funo. de desencorajar a introduo de expresses pela dificuldade de manipulao dos mapas que as contm.

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

17

sistemas digitais Exemplo: Considere-se a tabela de verdade: A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 F 1 1 0 0 0 1 0 1

a que corresponde o mapa de Karnaugh: B A 1 0 1 1 C No entanto a funo tambm pode ser representada pelo Mapa reduzido: B 1 0 C C 0 1 0 0

O mapa reduzido no representa seno, tal como o mapa de Karnaugh precedente, o reconhecimento do facto de a funo ser verdadeira quando: i) ii) a condio A.B for verdadeira ou quando a condio A . C for verdadeira

Repare-se que se podem interpretar as clulas do mapa de Karnaugh como descrevendo os termos: (A. B .C). 1, (A. B. C). 0, (A. B. C). 1, (A. B. C). 1, (A. B. C). 0, (A. B. C). 0, A. B. C, (A. B. C). 0 (A. B. C).1

que se reduzem a: A. B.C, A. B. C,

A. B. C

E que se podem interpretar as clulas do mapa reduzido como descrevendo os termos: (A . B) . 1, (A . B) . 0,


(A . B) . C, (A . B) . C

que se podem transformar em: A. B. C, A. B. C, A. B. C, A. B. C

sendo portanto as duas representaes equivalentes.


Manuel F.M. Barros Departamento de Engenharia Electrotcnica/Informtica Pgina

18

sistemas digitais Utilidade dos mapas reduzidos Os mapas de Karnaugh deixam de ser satisfatrios a partir de 5 variveis, pois a partir da precisam de ser representados em vrios "planos". Os mapas reduzidos permitem uma reduo do tamanho do mapa: o mapa ter metade do nmero de clulas se entrar uma varivel e um quarto, se entrarem duas. No entanto, a minimizao no to sistemtica como no caso dos M. de K., mesmo para o caso especialmente simples de haver uma nica varivel entrada no mapa. Preenchimento dos mapas reduzidos Caso de apenas uma varivel entrada A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 F 1 1 0 0 0 1 0 1

A 0 0 1 1

B 0 1 0 1

F 1 0 C C

B A

1 C

0 C

Outro EXEMPLO pode ser: A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 F 1 1 0 0 0 1 0 X

A 0 0 1 1

B F 0 1 1 0 C 0 1 C. X

1
A C

0 C. X

C.X representa uma situao em que a funo tem um valor opcional caso C seja l e tem o valor 0 caso C seja 0. Caso de duas variveis entradas
A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
Manuel F.M. Barros

B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

F 0 1 0 0 1 1 1 0 0 1 0 0 1 1 0 1

A 0 0 1 1

B 0 1 0 1

F C. D C.D+C.D+C. D C. D C.D+C.D+C. D

Departamento de Engenharia Electrotcnica/Informtica

Pgina

19

sistemas digitais E, obviamente, o mesmo acontece no mapa reduzido: B A C. D C. D C. D + C. D + C. D C. D + C. D + C. D

Como foi dito acima, no recomendvel usar mapas reduzidos quando disso resulte a introduo de expresses, pois os mapas deixam ento de poder servir de suporte minimizao. 1.3.5 - Outras leituras do mapa de Karnaugh Tambm possvel extrair a funo na forma mnima produto de somas. Embora os passos para essa extraco se possam explicar em termos de alguns dos teoremas j vistos, mais directo reconhecer que esse processo exactamente equivalente a obter a FMSP para a funo complementar de F. Se obtivermos uma FMSP para F e depois aplicarmos o teorema generalizado de DeMorgan: i) ii) (A + B + C + ...) = A. B. C. ... (A . B . C . ...)= A + B + C ...

[ aplicando primeiro i) soma geral e depois ii) a cada um dos termos que so complementados pela aplicao de i) ] obtemos a funo na forma mnima produto de somas. Temos ento os passos: agrupar os l s de F (que so os 0s de F); os Xs so tratados da mesma maneira, isto , so tomados como 1s de F (0s de F) se da resultar simplificao ou ento simplesmente desprezados. aplicar i) soma geral e depois ii) a cada um dos termos que so complementados Notar que um termo qualquer, por exemplo: ...+ A . B . C + ... vai dar origem a um factor em que as ocorrncias aparecem complementadas; no exemplo: ... . (A + B +C). ...

Dadas estas correspondncias, o processo pode ser tratado inteiramente no mapa de F, evitando de todo o uso do mapa de F. Isto feito da seguinte maneira: - agrupar 0s da mesma maneira que se agrupava ls para a FMSP - resultam factores em que as ocorrncias das variveis aparecem negadas (em relao s ocorrncias obtidas nos termos representativos de ls nos mesmos stios). EXEMPLO:
C B+C

1 0 0 1

1 0 0 0
D

1 1 0 0

1 1 1 1

B A + D

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

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

20

sistemas digitais 1.4 - Portas lgicas Embora seja possvel realizar qualquer funo lgica com: portas OU e portas Inversor ou ento com portas E e portas Inversor utilizam-se vulgarmente (e esto disponveis em larga variedade sob a forma de circuito integrado) outras portas lgicas, que constam da lista a seguir, juntamente com os seus smbolos e expresses lgicas:
NOME SMBOLO SMBOLO ALTERNATIVO EXPRESSO

E AND OU OR

A.B

A+B

NE NAND NOU NOR

A.B

A+B

Inversor NOT

NOME

SMBOLO

TABELA DE VERDADE A 0 0 1 1 B 0 1 0 1 A + B 0 1 1 0

EXPRESSO

OU-EX EX-OR

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

NOU-EX EX-NOR

A 0 0 1 1

B 0 1 0 1

A +B 1 0 0 1

A+B
OU

(= A. B + A . B )

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

21

sistemas digitais

Exerccios Propostos
1- Simplificar as seguintes expresses algbricas (utilize a lgica de Boole): a) A.( A.B C ) b) c) d)

A.B

A.B

A .B
A.B A.B A.B. A

A.B.C. A A.B .C

A.B.C

A.B .C
B. AB

A.B .C

A.B.C

A.B.C

e) A. AB f)

A.B

B.C

C .D

A .C.D

2- Obtenha os Diagramas Lgicos correspondentes s seguintes expresses (implemente com o nmero mnimo de circuitos integrados): a) Y b) Y c) Y

A.B.C
A .B

A.B

A.B , (Utilizando apenas portas NAND)

C .D ( A A.B.C ) ,
I. II. S com portas NOR S com portas NAND

3- Diga qual a funo do circuito representado no seguinte diagrama lgico:


A B C D E F Y=?

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

22

sistemas digitais 4a) Minimize atravs de Mapas de Karnaugh a seguinte funo:

F1 A.B.C .D A.B.C .D A.B.C.D


b) Determine as funes lgicas simplificadas correspondentes aos mapas de Karnaugh seguintes:
I.) C II.) C

1 1

1 X X
D

X X 1 1 1
B

X A X 1

1 X 1

5- Dado o circuito da Figura,

A B C D F

a) Minimize a funo F em SOMA DE PRODUTOS e em PRODUTO DE SOMAS. b) Supondo que as combinaes de entrada: A B C D 0 0 1 0 0 1 0 1 nunca podem surgir (isto , devem ser consideradas como condies opcionais), obtenha novamente a FORMA MNIMA SOMA DE PRODUTOS e a FORMA MNIMA PRODUTO DE SOMAS. 6- Desenhe o mapa de Karnaugh correspondente seguinte funo booleana (apresente tambm a funo simplificada):

( A.B C.D)( A.C

B.D)

7- Simplificar, utilizando mapas de Karnaugh, e implementar a seguinte funo:

A.B.E B .D.E

B .E B .D .E

8- Desenhar um circuito que contenha quatro botes de presso A, B, C e D, duas lmpadas L1 e L2 e que cumpra as seguintes condies de funcionamento: L1 acende carregando em trs botes quaisquer. L2 acende carregando nos quatro botes. Carregando num s boto, qualquer que seja, acendem-se as lmpadas L1 e L2.

Manuel F.M. Barros

Departamento de Engenharia Electrotcnica/Informtica

Pgina

23

Você também pode gostar