You are on page 1of 23

Funciones cannicas y Diagramas de Karnaugh

Realizado por Sergio Noriega Introduccin a los Sistemas Lgicos y Digitales Departamento de Electrotcnia Facultad de Ingeniera Universidad Nacional de La Plata 2003

INDICE

1 - Introduccin. 2 - Funciones cannicas. 3 - Diagrama de Karnaugh. 4 - Simplificacin de funciones simples. 5 - Simplificacin de funciones mltiples. 6 - Bibliografa.

1 - Introduccin.
Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD

Es sabido que una funcin lgica que representa a un circuito combinatorio, puede expresarse de muchas formas. Adems cuando se disea un circuito en base al planteo del problema que se ha de resolver ( por ejemplo realizando la tabla de verdad correspondiente), puede suceder que la funcin obtenida no sea la mas adecuada, debido por ejemplo a que sta puede ser simplificada, en el nmero de trminos a emplear y/o de variables asignadas. Una forma de poder disponer de una herramienta capaz de plantear dicha funcin y analizar su posible simplificacin es empleando la tcnica mtodo del Diagrama de Karnaugh. Existen adems otros mtodos que se basan en el uso de tablas ( mtodo tabular). Uno de ellos, si bien es antiguo, es el denominado Quine McCluskey, el cual es posible de integrar en un software para correr la simplificacin desde una PC. Hoy en da, la mayora de los compiladores asociados con los productos de chips de lgica programada, estn diseados para realizar sntesis de funciones lgicas lo mas eficiente posible a fin de optimizar la cantidad de recursos utilizables en el chip, como as tambin minimizar todos los tiempos de retardo y tiempos de skew entre los diferentes componentes internos.

2 - Funciones cannicas.
Se define como funcin cannica de n variables a aquella funcin que es representada como la unin incompleta de mintrminos interseccin incompleta de maxtrminos.

2.1 - Mintrminos y maxtrminos:


Se define mintrmino de una funcin cannica de n variables a un trmino producto de n variables tal que cumpla las siguientes condiciones: 1 - Cada trmino estar compuesto por la interseccin de las n variables. 2 - Dichas variables pueden aparecer negadas sin negar. 3 - Ni dichas variables ni sus negaciones pueden repetirse en el trmino producto.

De la misma forma se define un maxtrmino de una funcin cannica de n variables a aqul trmino unin de n variables que cumpla con las siguientes condiciones: 1 - Cada trmino estar compuesto por la unin de las n variables. 2 - Dichas variables pueden aparecer negadas sin negar. 3 - Ni dichas variables ni sus negaciones pueden repetirse en el trmino unin. En ambos casos la cantidad mxima de trminos producto y unin que se pueden tener con n variables est dada por la expresin: Nmero mximo de maxtrminos mintrminos = 2n , donde n es el nmero de variables de la funcin. Ejemplos: Para 2 variables A y B, hay 2 4 trminos en total.
2

Los mintrminos son: /A /B, /A B, A /B y A B. Los maxtrminos son: A+B, A+/B, /A+B y /A+/B.

Para 3 variables, tendremos

23 8 trminos en total.

Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD

Los mintrminos son: /C /D /E, /C /D E, /C D /E, /C D E, C /D /E, C /D E, C D /E y C D E. Los maxtrminos son: C+D+E, C+D+/E, C+/D+E, C+/D+/E, /C+D+E, /C+D+/E, /C+/D+E y /C+/D+/E A fin de ordenarlos se los enumera de la siguiente manera, segn la siguiente convencin, la cual, en principio es arbitraria: Nmero Representacin binaria Mintrmino Nmero Representacin binaria Maxtrmino

0 1 2 3 4 5 6 7

000 001 010 011 100 101 110 111

/A /B /C /A /B C /A B /C /A B C A /B /C A /B C A B /C ABC

/0 /1 /2 /3 /4 /5 /6 /7

000 001 010 011 100 101 110 111

A+B+C A+B+/C A+/B+C A+/B+/C /A+B+C /A+B+/C /A+/B+C /A+/B+/C

No son mintrminos maxtrminos por ejemplo los siguientes: Para 3 variables: A A B C, B, A+A+B+C B+/C ( est la variable A dos veces) ( falta una mas variables)

2.2 - Funciones cannicas de primera y segunda forma:


Definidos los maxtrminos y mintrminos, podemos expresar ahora una funcin lgica en primera y en segunda forma cannica como sigue: Primera forma:

F (m int rminos ) ( Sumatoria de mintrminos) E A B A B Ejemplos: Funcin de dos variables E (m1, m2) (1,2)

Funcin de tres variables

J PQ R PQ R PQ R
J (m1, m2, m7) (1,2,7)

Segunda forma: Ejemplos:

F (maxt rmino s) ( Productoria de maxtrminos)


Funcin de dos variables

T (E F) (E F) (E F)
T (M 0, M 2, M 3) (0, 2, 3)

Funcin de tres variables

A ( B C D)
A (M 2) (2)

Existen, sin embargo dos casos especiales:

Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD

Funcin unidad, F = 1, la cual est formada por la unin completa de mintrminos de n variables. En este caso siempre habr para todas las combinaciones posibles de las variables, un mintrmino que har a la funcin igual a 1. Ejemplo: La funcin: F = A+/A la funcin: F = /A/B+/AB+A/B+AB Funcin nula, G = 0, formada por la interseccin completa de maxtrminos de n variables. Aqu siempre habr una combinacin de las variables que har 0 a alguno de los trminos unin, por lo tanto la funcin siempre ser nula. Ejemplo: La funcin D = A /A la funcin D = (/C+/L) (C+/L) (/C+L) (C+L)

2.3 - Conversin a la forma cannica:


Cualquier funcin lgica expresada con el lgebra de Boole, puede ser representada tanto en una como en otra forma cannica. Por ejemplo: La funcin la siguiente forma:

F A B C , puede expresarse en primera forma, operando de

F = A ( /B/C + /BC + B/C + BC) + BC ( /A + A) Aqu los trminos en negrita valen 1 ya que se trata de la unin completa de mintrminos

entonces,

F = A/B/C + A/BC + AB/C + ABC + ABC + /ABC F = /ABC + A/B/C + A/BC + AB/C + ABC = (3,4,5,6,7)

Otro ejemplo pero para pasar a segunda forma cannica: Supongamos tener la funcin: P = ( Q + R) S. Podemos hacer lo siguiente: ( Q + R) = ( Q + R) + /S S donde (/S S) no afecta a la funcin P, porque vale 0 entonces, ( Q + R) = ( Q + R + /S) ( Q + R + S)

De igual forma, trabajamos con S: S = S + ( /Q + /R) ( /Q + R) ( Q + /R) ( Q + R) Aqu los trminos en negrita no afectan al resultado ya que se trata de la interseccin maxtrminos que vale 0. entonces, S = ( /Q + /R + S ) ( /Q + R + S ) ( Q + /R + S ) ( Q + R + S ) completa de

La expresin de P quedar: P = ( /Q + /R + S) ( /Q + R + S) ( Q + /R + S) ( Q + R + S) ( Q + R + /S) M6 M4 M2 M0 M1

P (M 0, M 1, M 2, M 4, M 6) (0,1, 2, 4, 6)
2.4 - Conversin entre formas cannicas

Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD

Dada una funcin en primera forma, es posible hallar la correspondiente funcin expresada en segunda forma y viceversa. Para ello se hace uso de las siguientes consideraciones: 1. 2. 3. 4. La unin completa de mintrminos, d la funcin unidad. La interseccin completa de maxtrminos, d la funcin nula. La unin entre una funcin y su negada, d la funcin unidad. La interseccin entre una funcin y su negada, d la funcin nula. Veamos un ejemplo para poder entender esto. Supongamos que tenemos la siguiente funcin en primera forma: G = /B /C /D + /B C D + B /C /D + B C /D + B C D =

(0,3,4,6,7)

La idea es pasarla a segunda forma, donde sabemos que la estructura de la misma es la de interseccin de uniones, a diferencia de la unin de intersecciones como est planteada en primera forma. Uno de los medios para lograr este cambio es empleando las leyes de Morgan. Pero no podemos aplicarlas sobre la funcin G, pues nos quedara al usar Morgan en el segundo trmino una barra de negacin. Pero si trabajamos con la funcin /G ( negada de G) se puede llegar a transformar el segundo trmino a segunda forma. Para ello analizando los puntos 1 y 3 podemos decir que /G est formada por los mintrminos que le faltan a la funcin G, esto es: /G = /B /C D + /B C /D + B /C D = (1,2,5)

entonces,

Si se niegan ambos trminos obtendremos: G = /B /C D + /B C /D + B /C D Se obtuvo nuevamente G, pero an el segundo trmino no se parece a interseccin de uniones. Aplicando Morgan en dicho trmino, tendremos: G = ( /B /C D ) ( /B C /D ) ( B /C D ) Si ahora volvemos a aplicar Morgan, pero en cada uno de los tres parntesis por separado, nos encontramos con que ahora aparecen tres maxtrminos, por lo tanto la funcin queda. G = ( B+C+/D) ( B+/C+D) ( /B+C+/D) El mismo procedimiento se debe aplicar para el caso de querer pasar de una funcin de segunda a primera forma. Algo interesante para notar es que la funcin de primera forma tena 5 mintrminos y ahora la funcin en segunda forma que representa la misma funcin lgica posee solo tres maxtrminos.

Como regla, en una funcin en primera forma de n variables con m mintrminos, siendo n m < 2 , le corresponder una funcin en segunda forma con M maxtrminos donde M = 2n - m. La misma consideracin para el caso contrario de conversin.

3 - Diagrama de Karnaugh.
Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD

3.1 - Concepto de simplificacin.


Segn lo visto al estudiar el lgebra de Boole, existen una serie de axiomas y postulados que ayudan a poder simplificar funciones en caso de que stas permitan ser reducidas a una mnima expresin. Por ejemplo, la funcin E = A B, no puede ser reducida ya que est compuesta por un solo mintrmino. En cambio la funcin F = A B + A , puede ser simplificada. Empleando las herramientas ya conocidas: F = A B + A = A ( 1 + B) = A Este es un ejemplo bastante sencillo, donde por simple inspeccin puede llegar a obtenerse una solucin eficiente al problema. Otro puede ser la siguiente funcin:

G A B C D A B C D A B C D A B C D
Esta funcin puede ser simplificada, quedando:

G B D

[ 5]

En este caso, si bien con un poco de prctica puede resolverse, no es tan rpida la simplificacin. El problema se acenta a medida que aumentan los trminos que definen a una funcin y el nmero de variables puestas en juego, donde al resolver matemticamente la misma, empleando las reglas del lgebra de Boole, puede resultar engorroso y hasta generar errores en los pasos a seguir mientras se est buscando algn tipo de simplificacin. Mas an podra llegarse a la conclusin de que la funcin no puede ser reducida, habiendo perdido tiempo en buscar una inexistente versin condensada de la misma. El diagrama de Karnaugh es un mtodo grfico, donde se puede representar en principio cualquier funcin lgica de un circuito combinatorio circuito secuencial elemental, permitiendo por simple inspeccin y de acuerdo a ciertas reglas, determinar no slo si es posible simplificar dicha funcin sino buscar de minimizarla lo mas posible. La limitacin prctica en su uso est determinada por el nmero de variables que puede manejar, ya que si bien no hay restriccin terica en dicha cantidad, a partir de seis variables se hace complejo la resolucin de sntesis de la funcin en cuestin. Generalmente se la emplea para resolver funciones de hasta 5 variables, sin demasiada complicacin.

3.2 Representacin grfica de funciones


Una funcin elemental de una variable en primera forma cannica, posee dos mintrminos, por ejemplo A y A. Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD 7

Se podra representar por medio de casilleros, cada uno representando a un mintrmino. Entonces, si la funcin es A, se pone un 1 en el casillero correspondiente a A y un 0 o dejndolo vaco al correspondiente al mintrmino A. Se indica adems para una mejor identificacin, a cada casillero con un nmero que coincide con el nmero de mintrmino, segn la convencin vista anteriormente. /A A 0 1

Para el caso de dos variables, por ejemplo, A y B, se tienen 4 casilleros pues ese es el nmero total de mintrminos. /B 0 B 1 Las variables indicadas negadas y sin negar indentifican adems a los mintrminos a manera de coordenadas.

/A 0

m0

m1

A 1

m2

m3

Si por ej. la funcin es F = /A/B + /AB + AB, se deben poner un 1 en los casilleros que corresponden a los mintrminos /A/B, /AB y AB.

/B

/A

Con tres, cuatro y cinco variables se dan los siguientes ejemplos: Tres variables: /B/C 00 /BC 01 BC 11 B/C 10

/A B /C
/A 0 m0 m1 m3 m2

A 1

m4

m5

m7

m6

Ejemplo: K = /ABC + /AB/C + /A/B/C /B/C /BC BC B/C

/A Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD A

Cuatro variables: /C/D 00 /CD 01 CD 11 C/D 10

/A/B 00

m0

m1

m3

m2

/A B C /D

/AB 01

m4

m5

m7

m6

AB 11

m12

m13

m15

m14

A/B 10

m8

m9

m11

m10

Ejemplo: L = /ABC/D + A/B/CD +ABC/D + ABCD

/C/D

/CD

CD

C/D

/A/B

/AB

1 1 1 1

AB

A/B

Cinco variables: /C/D 00 /CD 01 CD 11 C/D 10 /C/D 00 /CD 01 CD 11 C/D 10

/A/B 00 /A/B ISLD 00 Diagrama de Karnaugh. Copyright Sergio Noriega 2003 /AB 01 /AB 01

m0

m16

m15

m31

/E 0

E 1

Ejemplo:

F = /E/ABCD + /EABCD + E/ABCD + EA/BC/D + EA/B/CD + EABCD

/C/D

/CD

CD

C/D

/C/D

/CD

CD

C/D

/A/B

/A/B

/AB

1 1

/AB

1 1 1 1 E

AB

AB

A/B

A/B

/E

En general para identificar el tipo de funcin de que se trata, se suele poner en la esquina inferior derecha una R que indica reunin, es decir que la funcin est dada como unin de mintrminos.

Para el caso de representacin en segunda forma cannica, el razonamiento es exactamente el mismo. Cada uno de los casilleros que conforman el diagrama, representa un maxtrmino posible de la funcin. Sist en la funcin, entonces se pone un cero en ese lugar. Por ejemplo para el caso de tres variables, tenemos: BC 00 B/C 01 /B/C 11 /BC 10

Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD A 0

10

/A 1

(A+/B+/C)

Se indica con una letra I en la esquina inferior derecha que se trata de una representacin de interseccin de maxtrminos. La presencia de un dado maxtrmino, se indica en el diagrama llenando el casillero respectivo con un 0 y generalmente se deja vaco a aquel que no se encuentra en la funcin. Por ejemplo en la funcin: K = (A+B+C) ( /A+B+/C) (/A+/B+C) tendremos tres 0s. BC B/C /B/C /BC

0 0 0

/A

3.3 - Adyacencia:
Dados dos mintrminos, se dice que son adyacentes, si se cumple: 1 - Tienen igual nmero de literales. 2 - Los literales corresponden en ambos trminos a las mismas variables. 3 - En ambas expresiones, todas menos un literal coinciden entre si.

Ej.1: ABC y ASD tienen igual nmero de literales, cumpliendo con (1), pero no las mismas variables => no son adyacentes. Ej.2: AB y ABC no tienen el mismo nmero de literales => no son adyacentes.

involucran a

Ej.3: A/B/C y /A/BC cumplen con (1) y (2), pero hay dos literales que no coinciden => no son adyacentes. Ej.4: D/EF y DEF, cumplen con las tres premisas, por lo tanto son adyacentes.

Visualizacin de adyacencias:
Inspeccionando un poco en el diagrama de Karnaugh vemos que la numeracin de cada casillero no es correlativa si la enumeramos de izquierda a derecha y de arriba hacia abajo. Esto es debido a que est diseado a fin de que se cumpla con la propiedad de adyacencia entre los diferentes trminos de la funcin, ya sean maxtrminos mintrminos. Por tal motivo, en principio, dado un trmino en particular, sern trminos adyacentes a l, aquellos que se encuentren en su vecindad, arriba abajo, y a derecha a izquierda, pero nunca en diagonal donde halla casilleros de por medio. La nica salvedad para este ltimo caso es entre casilleros que se encuentren simtricos en ambos extremos. Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD 11

A continuacin veamos algunos ejemplos para una funcin de 4 variables donde se remarca la adyacencia entre dos trminos:

Cada una de las elipses representa al par de trminos que son adyacentes entre s. Esto es vlido ya sean mintrminos maxtrminos. Como se ver mas adelante, esta propiedad de adyacencia es muy importante para poder emplear el diagrama de Karnaugh como herramienta de simplificacin de funciones lgicas.

3.4 - Determinacin automtica de una funcin en segunda forma en base a la representacin en primera forma y viceversa.
Cuando se representa una funcin en primera forma, sabemos que tiene tambin su expresin en segunda forma y lo mismo para el caso contrario. Recordando lo visto en funciones cannicas, de como se poda determinar una de las formas partiendo de la otra aplicando Morgan, es posible aplicar el mismo principio grficamente. Consideremos como ejemplo el caso de la siguiente funcin dada en primera forma:

D = /A/B/C + /A/BC + A/B/C + A/BC + AB/C + ABC Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD

12

Recordando que se parta de la funcin negada, tendremos que /D estar formada por los mintrminos que faltan en la funcin de D, esto es: /D = /AB/C + /ABC Y aplicando la negacin en ambos trminos y luego aplicando Morgan dos veces en el segundo, llegamos a: D = /AB/C + /ABC ( negando ambos miembros)

D = (/AB/C) ( /ABC) ( aplicando Morgan una vez)

D = (A+/B+C) (A+/B+/C)

( aplicando Morgan otra vez) ( maxtrminos 2 y 3 respectivamente).

Analizando esto en el diagrama de Karnaugh vemos que si partiendo de la funcin dada en primera forma, tomamos los casilleros que son 0, ellos formarn la funcin D negada. El proceso se puede representar de la siguiente forma:

D = /A/B/C + /A/BC + A/B/C + A/BC + AB/C + ABC /B/C 00 /BC 01 BC 11 B/C 10

/A 0

1 1

1 1 1 1

/D = /AB/C + /ABC /B/C 00 /BC 01 BC 11 B/C 10

/A 0

Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD

13

D = (A+/B+C) (A+/B+/C) BC 00 B/C 01 /B/C 11 /BC 10

/A 1

Comparando los diagramas de Karnaugh de primera forma y segunda forma, se tiene que por ejemplo, para pasar directamente a segunda forma desde el Karnaugh de primera forma, slo hay que trabajar con los ceros del Karnaugh original. Se cambian las unines por intersecciones y adems el estado de los literales, es decir, si una variable estaba negada se deja sin negar y viceversa. En nuestro caso tenamos que los mintrm inos ceros de D, es decir, los que no formaban parte de esa funcin, pero s de /D, eran: /AB/C y /ABC. Aplicando la regla anterior tendremos que los maxtrminos que forman la funcin D son: A+/B+C y A+/B+/C

4 - Simplificacin de una funcin empleando el diagrama de Karnaugh.


Hasta ahora hemos visto como se puede representar cualquier tipo de funcin en el diagrama de Karnaugh, tanto en primera como en segunda forma. Analicemos las siguientes funciones en primera forma que se dan como ejemplo:: /C/D /CD CD C/D /C/D /CD CD C/D

1 1 /A/B /A/B Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD /AB /AB

14

AB

AB

/C/D

/CD

CD

C/D

/A/B

/AB 1 1 1 1

AB

A/B

En el primer caso se tiene una funcin formada por dos mintrminos ( 0 y 1), que agrupndolos, forman la funcin: /A/B/C. En el segundo caso, hay cuatro mintrminos, formando: BD y en el tercero caso, ocho mintrminos, que juntos, forman la funcin: A. Si se inspecciona cada una de las funciones con detenimiento se ver que se han formado grupos de a dos, cuatro y ocho trminos que son adyacentes. Una de las condiciones de adyacencia entre trminos es que hay un solo cambio de variables y esto significa que pueden agruparse generando otros trminos de menor cantidad de variables. Nuevamente, en el primer caso, tenemos que los dos mintrminos forman un nuevo trmino donde la variable D no aparece ( se ha eliminado) ya que est en uno negada y en el otro sin negar, esto es, matemticamente hablando: F = /A /B /C /D + /A /B /C D = A B C ( /D + D) = A B C

Aqu y en cualquier otro caso donde aparezcan dos mintrminos que sean adyacentes, siempre se eliminar una variable. Razonando de la misma manera, en el segundo ejemplo, tenemos un grupo de cuatro mintrminos que eliminan dos variables: A y C, quedando la funcin: G=BD Para el tercer caso, agrupando de a ocho mintrminos se eliminan tres variables, siendo la funcin reducida a la variable A. Esto se comprueba matemticamente ya que hay ocho mintrminos de cuatro variables cada uno en donde siempre aparece la variable A sin negar, por lo que se puede sacar como factor comn. Al hacerlo, nos aparecern en el parntesis, la unin de ocho trminos con las variables B, C y D, que en realidad son mintrminos de tres variables, y por lo visto anteriormente, al tener ocho mintrminos de tres variables, esto nos d la unin completa de mintrminos con B, Cy D, siendo la funcin unidad 1. Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD

15

Todo esto nos d la idea, de que para simplificar una funcin en priemra forma se deben buscar grupos de mintrminos que sean adyacentes. De esta forma, el mecanismo de simplificacin de una funcin es el siguiente: 1Representar a la misma en el diagrama de Karnaugh. 2Tratar de encontrar primero, grupos de mayor cantidad de mintrminos adyacentes. 3Seguir con los grupos de menor nmero de mintrminos. 4Los grupos formados deben tener entre s al menos un mintrmino diferente.

En este mtodo de simplificacin puede ocurrir que la funcin no pueda ser reducida o que existan mas de una alternativa para representarla una vez reducida. Por ejemplo, la funcin B D, no puede ser reducida.

Un ejemplo un poco mas complejo puede ser el siguiente:

/C/D /A/B /AB AB A/B


1

/CD
1

CD
1

C/D

En este caso se han podido formar cuatro grupos de cuatro mintrminos y un solo grupo de dos mintrminos. La funcin simplificada ser: F = /A/C + /C/D + BD + /AD + /BCD

Una consideracin importante que hay que tener en cuenta es en lo referente al tipo de diagrama en el cual estamos trabajando, esto es, primera o segunda forma. Puede darse el caso en que a los fines de implementar la funcin convenga una u otra segn lo que hemos visto respecto a la cantidad de trminos que se involucran en uno u otro caso. Como ejemplo vemos la siguiente expresin representada en primera forma:

/C/D

/CD

CD

C/D

/A/B

1 /AB Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD


AB

16

1 1

1 1

1 1

1 1

Aqu la funcin puede ser reducida como mximo a: F = /C/D + A + /BC Mientras que si planteamos resolver F en segunda forma cannica, tendremos:

CD

C/D

/C/D

/CD

AB

0 0 0 0

A/B

/A/B

/AB

La expresin inicial de F sin simplificar ser: F = (A+B+C+/D) (A+/B+C+/D) (A+/B+/C+/D) (A+/B+/C+D) Al igual que en primera forma, es posible simplificar una funcin en segunda forma cannica, si se agrupan mintrminos en grupos potencia de dos, es decir, de a dos, cuatro, ocho, etc. mintrminos.

Por tal motivo se puede ver que la expresin anterior puede reducirse tomando dos grupos de dos maxtrminosy quedara: F = (A+C+/D)(A+/B+/C)

Casos especiales de sntesis:


Existen casos, sin embargo donde se hace muy difcil encontrar la solucin mas conveniente ya que por ejemplo desde el punto de vista prctico puede ser mas ventajoso emplear mas compuertas de un mismo tipo que otra opcin que necesite menos compuertas pero de mas de un tipo. Esto se debe a que comercialmente se consiguen circuitos integrados standard con varias compuertas por chip. Un circuito que deba usar cuatro compuertas de dos entradas necesitar de dos circuitos integrados si alguna variable se deba negar. Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD

17

Si la misma funcin tiene otra solucin con solo dos compuertas de distinto tipo y hay variables negadas, necesitar de tres circuitos integrados, lo cual, econmicamente es una solucin peor que la primera, ya que se utiliza un circuito mas, mayor rea de impreso, mayor nmero de integrados para stock y menor confiabilidad al aumentar el nmero de componentes. Un caso especial que se d en la representacin por diagrama de Karnaugh es cuando existe una disposicin de trminos ( min maxtrminos) en forma diagonal como se ve a continuacin:

/B/C /A

/BC

BC

B/C
E (1,2,4,7)

1 1 1

A primera vista parece que no existe posibilidad de simplificar a esta funcin. Esto es verdad si pensamos en emplear las funciones bsicas, pero si desarrollamos esta expresin, podemos encontrar una reduccin importante de compuertas con los circuitos integrados comerciales disponibles. Trabajando un poco con el Algebra de Boole, tenemos que: E = /A /B C + /A B /C + A /B /C + A B C E = /A ( /B C + B /C) + A ( /B /C + B C) E = A BC + A BC = ABC Con lo cual dicha funcin se implementa con dos compuertas Or - Exclusivo ya que comercialmente vienen de dos entradas cada una. Adems en un mismo chip se dispone de cuatro de stas, minimizndose adems el espacio en el impreso.

En forma similar para el caso de cuatro variables tenemos por ejemplo lo siguiente:

CD AB
1 1 1 1 F = /A /B /C D + /A /B C /D + /A B /C /D + /A B C D + A /B /C /D + A /B C D + A B /C D + A B C /D

1 1 1

Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD

18

Agrupando convenientemente los trminos podemos llegar a una expresin donde estn involucrados operadores del tipo Or - exclusivo.

F = /C D ( /A /B + A B ) + C /D ( /A /B + A B ) + C D ( /A B + A /B ) + /C /D ( A /B + /A B ) F = A B ( /C D + C /D ) + A B ( C D + /C /D ) = F=(AB) (CD)+(AB) (CD)= ABCD Empleando como en el caso anterior compuertas Or - Exclusivo de dos entradas podemos implementar esta funcin con tres compuertas, es decir con un slo chip.

Representacin de cualquier funcin en diagramas de Karnaugh expresada en forma general


Como se vo hasta ahora, para poder expresar una funcin en un diagrama de Karnaugh, era necesario primero pasarla a primera segunda forma cannica. Es posible, sin embargo, saltearse ese paso, ya que en general las funciones vienen expresadas como un conjunto de trminos con operaciones lgicas bsicas y no cumplen con los requisitos de mintrminos y/o maxtrminos. Analizando por ejemplo un diagrama en primera forma como el siguiente veremos que por ejemplo, la unin de los mintrminos 0, 1, 4 y 5 forman la funcin /B. Esto coincide con las referencias verticales y horizontales de las variables, tal que /B existe en esos cuatro casilleros.

/B/C /A

/BC

BC

B/C

1 1

1 1

Si por ejemplo, nuestra funcin es B, entonces deberamos llenar los otros cuatro casilleros de la derecha. Para la funcin A, los cuatro de abajo. Para /A, los cuatro de arriba y as sucesivamente para C. Si en cambio, queremos expresar la funcin A B ( A interseccin B), la regla a adoptar para Karnaugh de primera forma, es la siguiente: Las operaciones de unin entre trminos queda reflejado en el diarama como los mintrminos comunes y no comunes a los mismos. Las operaciones de interseccin, en cambio, consideran slo los trminos comunes a los trminos elegidos.

Para el caso de A B, podemos dibujar los respectivos Karnaugh como sigue:

Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD

19

FUNCION A

FUNCION B

/B/C /A

/BC

BC

B/C /A

/B/C

/BC

BC

B/C

1 1

1 1

Segn la regla anterior, el Karnaugh resultante al realizar la operacin A B, es la de tomar slo los trminos comunes a ambas funciones, por lo que de esto resulta:

/B/C /A

/BC

BC

B/C

En cambio, la funcin A+B resultara en:

/B/C /A

/BC

BC

B/C

1 1 1 1

1 1

Otro ejemplo, pero de cuatro variables sera por ejemplo: G = A B + /D (/A+C) Para este caso, se pueden hallar los diagramas de A B por un lado y de /D (/A+C) por el otro y luego volcar todos los trminos comunes y no comunes en el Karnaugh definitivo.

CD AB
/A/B /AB AB 1 1 1 1 /C/D /CD CD C/D

CD AB
1 1 1 1 1 1

Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD A/B

20

1 Funcin A B Funcin /D

CD AB
1 1 1 1 1 1 1 1 Funcin /A+C 1 1 1 1

CD AB
1 1 1 1 1 1 Funcin /D (/A+C)

CD AB
1 1 1 1 1 1 1 1 1 Funcin G = A B + /D (/A+C)

En caso de operar con diagramas de Karnaugh de segunda forma, las reglas son similares, pero duales, es decir, que cuando se desee hacer una unin, se consideran slo los trminos comunes y en una interseccin, lo comn y no comn.

5 - Simplificacin de funciones mltiples con diagrama de Karnaugh


Puede suceder que el circuito que se desea disear contenga mas de una salida en funcin de las mismas variables de entrada. En estos casos puede ser interesante analizar mediante los diagramas de Karnaugh respectivos a cada funcin, como estn distribudos los trminos en los mismos, a fin de hallar estructuras comunes. Esto redunda en una disminucin del nmero de compuertas que se deba utilizar. Por ejemplo, tenemos el siguiente caso:

CD AB
1

CD AB
1 1 1 1 1

Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD 1

21

F=

1 1

1 1

G=

F (3,5,7,13,15)

G (0,4,5,7,8,13,15)

Aqu se puede observar que existen cuatro trminos en comn permitiendo de esta manera sintetizar slo una vez la subfuncin B D ( que agrupa los mintrminos 5,7,13 y 15) en ambas funciones, con el consecuente ahorro de compuertas.

En el caso en que no se encuentren trminos comunes, no es posible mediante este mtodo simplificar la funcin en forma directa. Se puede realizar una inspeccin de las tablas de verdad, donde puede aparecer alguna informacin adicional, como por ejemplo el que se presenta en el siguiente ejemplo: Se trata de un detector de magnitud de dos nmeros binarios A y B de dos bits cada uno ( A1A0 y B1B0).

El circuito a sintetizar debe disponer de tres salidas, A>B, A<B y A=B, para determinar el estado de la comparacin. A>B se pondr en 1 slo si se verifica dicha desigualdad. A<B se pondr en 1 slo si se verifica dicha desigualdad. A=B se pondr en 1 slo si se verifica dicha igualdad.

La tabla de verdad para estas tres funciones ser:

A1 0 0 0 0 0 0 0 0 1 1 1 1 1

A0 0 0 0 0 1 1 1 1 0 0 0 0 1

B1 0 0 1 1 0 0 1 1 0 0 1 1 0

B0 0 1 0 1 0 1 0 1 0 1 0 1 0

A<B 0 1 1 1 0 0 1 1 0 0 0 1 0

A=B 1 0 0 0 0 1 0 0 0 0 1 0 0

A>B 0 0 0 0 1 0 0 0 1 1 0 0 1

Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD

22

1 1 1

1 1 1

0 1 1

1 0 1

0 0 0

0 0 1

1 1 0

Sin dibujar los diagramas de Karnaugh de cada funcin, podemos ver en la tabla que no existe coincidencia alguna de mintrminos en tre las tres funciones, es decir, si un mintrmino aparece en la funcin A>B no aparecer en las otras dos y viceversa. Karnaugh aqu no sirve, pero intuitivamente podemos reducir la cantidad de lgica para resolver las tres funciones simultneamente. Si bien no existe ningn trmino que se repita en alguna de las tres funciones, hay una regla implcita, que es la siguiente: Slo una salida ser verdadera ( se pondr en 1) por vez. Conociendo esto, es intuitivo pensar que es posible generar una de las funciones en base a las otras dos. Por ejemplo la funcin A=B puede ser generada a partir de las salidas de A>B y A<B, sabiendo que la primera ser siempre verdadera cuando se verifique que A>B y A<B sean ambas falsas ( estn en 0). Con esto en mente, se sintetizan por separado las funciones A>B y A<B y luego se puede implementar A=B, empleando una sola compuerta NOR, con lo cual hemos evitado sintetizar esta funcin desde las variables de entrada.

6 Bibliografa
1 Introduction to switching theory and logical design. Hill & Peterson. Editorial John Wiley & Sons. 2 Circuitos Digitales y Microprocesadores. Herbett -Taub. 3 Electrnica Digital. Bignell Donovan. CECSA. 4 Fundamentos de diseo lgico y computadoras. Morris Mano Kime. Prentice-Hall Hispanoamericana.

Diagrama de Karnaugh. Copyright Sergio Noriega 2003 ISLD

23