Está en la página 1de 34

NOTAS DE CLASE

CIRCUITOS DIGITALES

4 PRINCIPIOS DE DISENO LOGICO COMBINATORIO

PROFESOR: GERMAN MORALES Z.

ENERO DE 2010

4. Simplificacin de circuitos lgicos La simplificacin de los circuitos lgicos es la aplicacin ms importante del algebra booleana .. Bsicamente la simplificacin tiene por objeto disminuir el costo, el espacio, el consumo de energa y aumentar la velocidad, si es posible, de un circuito lgico mediante la eliminacin de bloques lgicos innecesarios, o mediante la sustitucin de un bloque por otro que tenga menos entradas. Para lograrlo obtenemos primeramente la descripcin algebraica de un circuito, la simplificamos mediante los teoremas booleanos y luego obtenemos el nuevo circuito simplificado. 4.1 Algebra de Boole. El algebra de Boole son las matemticas que se utilizan para los sistemas digitales. Como hemos visto las expresiones y operaciones bsicas booleanas son la funcin AND, OR y NOT de las cuales podemos obtener las NAND, NOR. Las leyes bsicas del algebra de Boole ( la ley conmutativa, la ley asociativa y la ley distributiva) son las mismas que las del algebra ordinaria.Existen reglas y teoremas que deben ser aplicados correctamente. 4.1.1 Teoremas de una sola variable La primera serie de teoremas se relaciona con la operacin AND que slo comprende una variable que llamaremos x, pero que puede ser cualquier variable. (1) (2) (3) (4)

X 1 = X X X = X
X X =0

X 0 = 0

es muy sencillo comprobar cualquiera de esos teoremas si los probamos con x = 0 y tambin con x = 1. si el teoremas es aplicable en ambos casos debe ser correcto, porque x es una variable booleana que por definicin solo puede tener dos valores. El teorema (1) expresa que si una variable se interfecta con 0, el resultado debe ser 0 y esto puede comprobarse si sustituimos x tanto con 0 (0*0 = 0) como con 1 (1*0 = 0), ya que ambos casos satisfacen la definicin de la operacin y dada en la tabla 4.1. el teorema (2) expresa que una variable que se interfecta con 1 no cambia, (0*1 = 0,1*1 = 1) y el teorema (3) expresa que una variable intersectada a si misma tampoco cambia, (0*0 = 0, 1*1 = 1). El teorema (4) expresa que el resultado de una variable que intersecta a su inversa siempre es 0, porque ya sea la variable o su inversa es siempre 0, (0*1 = 0, 1*0 = 0). La segunda serie de teoremas se refiere a la operacin OR y a una sola variable x.

(5) (6) (7) (8)

X +1 = 1 X+X =X

X +0 = X

X + X =1

Los teoremas (5) y (7) expresan que si una variable se une con 0 o consigo misma no sufre cambio. El teorema (6) expresa que un 1 unido a cualquier cosa da por resultado 1 y el teorema (8) expresa que una variable unida con su inversa siempre da por resultado 1, porque ya sea la variable o su inversa debe ser 1. como los cuatro primeros teoremas, stos pueden comprobarse si sustituimos x por el valor 0 y luego por el valor de 1. El teorema (9) confirma la doble inversin de una variable: (9)
X =X

Un punto importante que hay que recordar cuando se aplican estos teoremas es que la variable x puede representar no slo una variable aislada sino tambin una expresin algebraica completa. Por ejemplo, podemos simplificar A B C 0 si hacemos x igual a la expresin A B C sustituyendo x por A B C en el teorema (1) X 0 = 0 , tenemos ( A B C ) 0 = 0 . Como otro ejemplo A B A B puede simplificarse si se sustituye x por A B en el teorema (3) X X = X , lo que da por resultado ( A B) ( A B) = A B . En el tercer ejemplo A B B puede simplificarse si B B se sustituye por 0 de acuerdo con el teorema (4) X X = 0 , lo que nos da A 0 = 0 de acuerdo con el teorema (1), X 0 = 0 . Para demostrar cmo pueden usarse estos teoremas para simplificar circuitos lgicos, trataremos de simplificar el circuito de la figura 4.10.
A A + B + B B +C = 0 + B + B B +C = B + B B +C
= B + B +C = B +C

teo.(4); X X = 0 teo.(5); X + 0 = X teo.(3); X X = X eo.(7); X + X = X

Por consiguiente el circuito de la figura 4.10. puede reemplazarse con un solo bloque OR con entradas B y C, porque por cada serie de valores de entrada los niveles de salida tanto del circuito original como del simplificado siempre sern iguales.

Fig. 4.10. Circuito que puede simplificarse utilizando teoremas de una sola variable. 4.1.2. Descomposicin en factores y expansin

Podemos emplear el teorema (14) para demostrar tanto la descomposicin en factores como la expansin: (14) X*Y + X*Z= X*(Y+Z) Ese teorema expresa que si una variable aparece 814) en cada termino considerado como (un grupo de variables intersectadas) de una expresin, la variable puede sacarse como factor e intersectar al resto de la expresin. La fig. 4.12 muestra dos circuitos que son equivalentes segn el teorema (14). Como ejemplo de descomposicin en factores, el teorema se aplica a la expresin A*B*C + A*C*D*E= A*C*(B+D*E)

Fig. 4.12. Dos circuitos equivalentes que demuestra el Teorema (14). Empleando el mismo teorema (14) se puede demostrar la expansin. Si una variable x interfecta una expresin y+z, podemos intersectarla separadamente con cada parte de la expresin. Como ejemplo, aplicamos el teorema a la expresin siguiente: A*C*D*(B+E*F)= A*B*C*D + A*C*D*E*F Como otro ejemplo podemos expandir (A+B) * (C+D) si tratamos primeramente (A+B) como si fuera una sola variable. (A+B) * (C+D) = (A+B) * C + (A+B)*D = A*C+B*C +A*D+B*D Si invertimos esa secuela para volver a la expresin original, ser una descomposicin en factores. 4.1.3. Propiedades de las operaciones AND y OR Algunas propiedades generales de las operaciones AND y OR pueden expresarse mediante los siguientes teoremas de variables mltiples: (9) X Y = Y X (10) X + Y = Y + X (11) X (Y Z ) = X Y Z

(12) X + (Y + Z) = X + Y + Z Los teoremas (10) y (11) expresan que el orden de las variables no afecta las operaciones AND u OR y adems expresan siempre que las entradas de los bloques AND y OR son idntica e intercambiables. Los teoremas (12) y (13) expresan que el orden en que se ejecutan las operaciones AND y OR no afecta el resultado final. Para encontrar x+y+z, podemos reunir cualquier par de ellas y reunir el resultado de las mismas con la tercera. Aplicando esto a los circuitos lgicos como se ve en la figura 4.11, podemos reunir dos entradas a un tiempo o las tres a un tiempo y los resultados sern equivalentes.

Fig. 4.11. dos circuitos equivalentes para obtener x+y+z. 4.1.4. Descomposicin en factores y expansin Podemos emplear el teorema (14) para demostrar tanto la descomposicin en factores como la expansin: (14) X Y + X Z = X (Y + Z ) Ese teorema expresa que si una variable aparece 814) en cada termino considerado como (un grupo de variables intersectadas) de una expresin, la variable puede sacarse como factor e intersectar al resto de la expresin. La fig. 4.12 muestra dos circuitos que son equivalentes segn el teorema (14). Como ejemplo de descomposicin en factores, el teorema se aplica a la expresin
A B C + A C D E = A C (B + D E)

Fig. 4.12. Dos circuitos equivalentes que demuestra el Teorema (14). Empleando el mismo teorema (14) se puede demostrar la expansin. Si una variable x interfecta una expresin y+z, podemos intersectarla separadamente con cada parte de la expresin. Como ejemplo, aplicamos el teorema a la expresin siguiente:

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

Como otro ejemplo podemos expandir (A+B) * (C+D) si tratamos primeramente (A+B) como si fuera una sola variable.
( A + B) ( A + C ) = ( A + B) C + ( A + B) D = A C + B C + A D + B D

Si invertimos esa secuela para volver a la expresin original, ser una descomposicin en factores. 4.1.5. Teorema de simplificacin Los siguientes teoremas son muy tiles para simplificar circuitos lgicos.

X + X Y = X

X Y + X Y = X

X + X Y = X +Y

X Y + X Z + Y Z = X Y + X .Z

(15) (16) (17) (18)

Vase el teorema (15). Como y e y deben ser ya sea 0 y 1 o 1 y 0, por lo tanto, sin que importe cual sea el valor de y una x se interfecta con 0 mientras que la otra x se interfecta con 1. Por lo tanto, x*0 + x*1 = x. este teorema puede comprobarse como
X Y + X Y = X (Y +Y )

= X 1 =X

Teo. (14) Teo. (8) Teo. (2)

Cuando se aplica ese teorema a un circuito a un circuito lgico puede eliminar dos bloques and y or. El teorema (16) muestra que x*y pueden eliminarse (hacerse iguales a 0) si se une con x, porque cuando x=0, x*y=0 * y=0. Cuando x=1, no importa a que sean iguales x*y, ya que 1 unido con cualquier cosa es igual a 1 (teorema 6). El teorema puede comprobarse como sigue:

X + X Y = X 1 + X Y
= X (1 +Y )

= X 1 =X

Teo. (2) Teo. (14) Teo. (6) Teo. (2)

La aplicacin de este teorema puede eliminar un bloque and u or. El teorema (17) muestra que cuando x*y se rene con x, podemos cambiar la x a 1, porque cuando x no es 1, x=0 y x=1. En este caso no importa el valor x*y, ya que 1 unido con cualquier cosa es igual a 1. El teorema (17) puede comprobarse del modo siguiente:
X + X Y = X 1 + X Y
= X (Y +Y ) + X Y = X (Y +Y +Y ) + X Y

Teo. (2) Teo. (8) Teo. (7)

= X Y + X Y + X Y + X Y
= X (Y +Y ) +Y ( X + X )

= X 1 + Y 1 = X +Y

Teo. (14) Teo. (14) Teo. (8) Teo. (2)

La aplicacin de este teorema puede eliminar un bloque and. El teorema (18) muestra que si x se interfecta con la variable y y x se interfecta con la variable z, entonces puede eliminarse la interseccin de y y z. la nica forma de que y*z pueda afectar el valor de la expresin es que y*z= 1, lo que solo puede ocurrir cuando, tanto y como z son 1. Sin embargo, si ambas son 1 entonces ya sea x*y o x*z deben ser tambin 1. Porque ya sea x o x siempre deben ser 1. Como ya sea x*y o x*z ser 1 cuando y *z es 1, entonces y*z debe eliminarse, porque 1+1=1. Este teorema puede comprobarse como sigue:
X Y + X Z + Y Z = X Y 1 + X Z 1 + Y Z 1
= X Y ( Z + Z ) + X Z (Y +Y ) +Y Z ( X + X )

Teo. (2) Teo. (8) Teo. (7) Teo. (14) Teo. (8) Teo. (2)

= X Y Z + X Y Z + X Y Z + X Y Z + X Y Z + X Y Z

Teo. (14)

= X Y Z + X Y Z + X Y Z + X Y Z
= X Y ( Z + Z ) + X Z (Y +Y )

= X Y 1 + X Z 1 = X Y + X Z

La aplicacin de este teorema puede eliminar un bloque and. 4.1.6. Teoremas de inversin Los teoremas (19) y (20) describen la inversin de las expresiones que contienen variables que interceptan o unen.
X Y = X +Y X +Y = X Y

(19) (20)

Cuando se invierten esas expresiones se invierte cada variable, y la operacin se cambia de AND a OR, o de OR a AND. La mejor forma de comprobar esos teoremas consiste en emplear una tabla de combinaciones que permita la comparacin de los valores de ambos de una ecuacin para cada posible combinacin de valores de variables x e y. Tabla 4.4. Tabla de combinaciones que se emplea para comprobar el teorema (19) (1) (2) (3) x y x*y 0 0 0 0 1 0 1 0 0 1 1 1 (4) (5) (6) x*y x y 1 1 1 1 1 0 1 0 1 0 0 0 (7) x+y 1 1 1 0

Las columnas 1 y 2 de la Tabla 4.4 muestran las cuatro posibles combinaciones de valores para x e y. La columna 3 muestra los valores de la expresin x * y obtenidos cuando se intersectan los valores de las columnas 1 y 2. La columna 4 muestra los valores de x*y o sea la inversin de x * y que se obtienen invirtiendo los valores de la columna 3. Para comprobar que x* y = x + y, debemos ahora registrar los valores de x+y comprarlos con los de x * y. Para hacerlo podemos obtener primeramente de x e y en las columnas 5 y 6 invirtiendo las columnas 1 y 2 respectivamente. Obtenemos los valores de x + y en la columna 7 si se unen las columnas 5 y 6. Tabla 4.5. Tabla de combinaciones empleadas para comprobar el teorema (20) x 0 0 1 1 y x+y 0 0 1 1 0 1 1 1 x+y 1 0 0 0 x 1 1 0 0 y 1 0 1 0 x* y 1 0 0 0

Comparando las columnas 4 y 7 vemos que las dos son iguales para cada posible combinacin de valores de x e y. El teorema (20) puede comprobarse del mismo modo empleando la Tabla 4.5. 4.2. Aplicacin de los teoremas La aplicacin de estos teoremas no siempre puede ser evidente, como se ver en los ejemplos siguientes. El problema principal consiste en decidir cules teoremas hay que aplicar y en que orden, porque a menudo hay varios caminos que pueden seguirse. En general si esos caminos se siguen en la forma adecuada llevarn al circuito ms sencillo, excepto como ocurre a menudo, cuando los circuitos pueden simplificarse en otros dos o ms circuitos distintos aunque igualmente sencillos.

Fig.4.13. Circuito que se simplifica en el ejemplo 1. Ejemplo 1. Simplifquese el circuito de la Fig. 4.13.

Solucin:
A B C + A B (C + D ) = A B C + A B C + A B D

= A B + A B D = A B

Teo.(14) Teo(15) Teo(16)

Se obtiene el mismo resultado cuando se sigue el mtodo:


A B C + A B (C + D ) = A B [C + (C + D )] = A B (C +C + D )

= A B (1 + D )

= A B 1 = A B

Teo(14) Teo(13) Teo(8) Teo(6)

La Fig. 4.14 muestra el circuito simplificado. Ejemplo 2. Simplifquese el circuito de la Fig. 4.15.

Fig.4.15. Circuito que se simplifica en el ejemplo 2.

Solucion:
A B C + A B + ( A + B +C ) + A B C + B C + A B C

= A B C + A B + A B C + A B C + B C + A B C = A C + A B + A C + B C

TEO(20) TEO(15)

En este punt el teorema (18) puede aplicarse en dos formas distintas, que darn por resultado dos circuitos diferentes aunque iguales.
= A C + A C + B C
= A C + A B + A C

En vez de aplicar el teorema (15) aplicaremos el (16), pero de todos modos obtendremos los mismos resultados.
A B C + A B + ( A + B +C ) + A B C + B C + A B C

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

TEO(20) TEO(16) TEO(14) TEO(17) TEO(14) TEO(18)

= A B + A C + B C + A C = A C + B C + A C = A B + A C + A C

Fig. 4.16. solucion del ejemplo 2.

Fig. 4.17. Solucin alternativa del ejemplo 2.

Ejemplo 3. Simplifquese el circuito de la fig. 4.18. Solucion:


A B C + A C ( B D ) + ( A + B +C ) + A C ( A B C D ) + A B C D

A B C + A B C D + ( A B C ) + A C ( A + B +C + D) + A B C D

TEO(12), TEO(20), TEO(19) TEO(14)


A B C + A B C D + A B C + A A C + A B C + A C C + A C C + A C D + A B C D

Fig. 4.18. Circuito que se simplifica en el ejemplo 3.


= A B C + A B C D + A B C + A A C + A B C + A B C + A C D + A B C D TEO.

(4)
= A D (C + B + C ) + A B C D + A B C + A B C D = A D (1 + B ) + A B C D + A B C + A B C D

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

= A D + B C D + A B C + B C D = A D + B C D + B C D

Teo. (14) Teo. (8) Teo. (6) Teo. (14) Teo. (17) Teo. (14) Teo. (18)

Tabla de los teoremas Teoremas de una sola variable (1) X 0 = 0 (2) X 1 = X (3) X X = X (4) X X = 0 (5) X + 0 = X (6) X + 1 = 1 (7) X + X = X (8) X + X =1 (9) X = X Propiedades de las operaciones AND y OR: (10) (11) (12) (13)
X (Y Z ) = X Y Z X + (Y + Z ) = X + Y + Z

X Y = Y X

X +Y = Y + X

descomposicin en factores y expansion: (14) X Y + X Z = X (Y + Z )

Teoremas de simplificacin: (15) (16) (17) (18) (19) (20)


X Y + X Y = X

X + X Y = X

X + X Y = X +Y X Y + X Z +Y Z = X Y + X Z X Y = X +Y X +Y = X Y

4.3. Formas cannicas de una funcin. Una funcin booleana puede ser expresada algebraicamente de diferentes formas. Las formas cannicas facilitan los procedimientos de simplificacin para las expresiones booleanas generando circuitos lgicos mas deseables. Estas formas cannicas tienen trminos suma (maxiterminos) esto es una suma lgica formada por una operacin OR entre los literales Ej: X+Y+Z o trminos sumas (miniterminos) esto es por un producto lgico formado una operacin AND entre literales Ej: XYZ. Una variable binaria puede aparecer en su forma normal (x) o en la forma e complemento (x'). Considrese ahora dos variables binarias x y y combinadas con la operacin AND; como cada variable puede aparecer de cualquier forma, habr cuatro combinaciones posibles: x'y', x'y, xy' y xy. Cada no de estos cuatro trminos AND se llaman trminos mnimos (miniterminos) de un producto normalizado. De igual manera, se pueden cambiar n variables para formar 2n trminos mnimos. Los 2n diferentes trminos mnimos pueden determinarse por un mtodo similar al mostrado en Tabla 4-1 para tres variables. Los nmeros binarios de 0 a 2n -1 se listan bajo las n variables. Cada trmino mnimo se obtiene de un trmino AND de n variables con cada variable tildada, si el bit correspondiente al nmero binario es 0 y si no est tildada a 1. Un smbolo para cada trmino mnimo se ilustra en la tabla en la forma de m j, donde j denota, el equivalente decimal del nmero binario del trmino mnimo correspondiente. Tabla 4-1 Trminos mnimos y mximos para tres variables binarias Trminos mnimos Trminos mximos x y z Trmino Designacin Trmino Designacin 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 x'y'z' x'y'z x'yz' x'yz xy'z' xy'z xyz' xyz m0 m1 m2 m3 . m4 m5 m6 m7 x+y+z x + y + z' x + y'+ z x + y' + z' x' + y + z x' + y + z' x' + y' + z x' + y' + z' M0 M1 M2 M3 M4 M5 M6 M7

De manera similar, las n variables formando un trmino OR, con cada variable tildada o no tildada, darn 2n combinaciones posibles llamadas trminos

mximos (maxiterminos) de las sumas normalizadas. Los ocho trminos mximos de las tres variables, conjuntamente con la simbologa asignada, se listan en la Tabla 4-1. Cualesquier 2n trminos para n .variables pueden determinarse de manera similar. Cada trmino mximo se obtiene de un trmino OR de n variables con cada variable no tildada el correspondiente bit es 0 y tildada si es 1.* Ntese que cada trmino mximo es el complemento de su correspondiente trmino mnimo y viceversa. Una funcin de Boole puede ser expresada algebraicamente a partir una tabla de verdad dada, conformando un trmino mnimo por cada combinacin de las variables que producen un 1 en la funcin para luego, tener la OR de todos los combinaciones 001, 100, 111 como x'y'z, xyz' y x y z respectivamente. Como cada uno de estos trminos mnimos resulta en f1 = 1, se tiene: Tabla 2-4 Funciones de tres variables x 0 0 0 0 1 1 1 1 y 0 0 1 1 0 0 1 1 z 0 l 0 1 0 1 0 1 Funcin f1) Funcin f2 0 0 1 0 0 0 0 1 1 0 0 1 0 1 1 1

f1 = x'y'z + xy'z' + .xyz = m1 + m4 + m7 De manera similar, se puede fcilmente verificar que: f2 = xyz + xyz + xyz+ xyz = m3 +m5 +m6 +m7 Considrese ahora el complemento de una funcin de Boole. Este puede leerse de una tabla de verdad formando un trmino mnimo por cada combinacin que produce un cero y luego haciendo la funcin OR de esos trminos. El complemento de f1 se lee as: f1 = x 'y' z' + x'yz' + x'yz + xyz + xyz Si se obtiene el complemento de f1 se obtiene la funcin f1 : f1 = (x + y + z)(x + y' + z)(x + y' + z')(x' + y + z')(x' + y' + z) = M0 M2 M3 M5 M6 De igual manera, es posible leer la expresin f2 de la tabla: f2 = (x + y + z)(x + y + z')(x + y' + z)(x' + y + z) = M0 M1 M2 M4 4.3.1. Suma de trminos mnimos Se haba dicho antes que para n variables binarias, se pueden obtener 2n trminos mnimos diferentes y que cualquier funcin de Boole puede

expresarse como una suma de trminos mnimos. Los trminos mnimos cuya suma define la funcin de Boole son aquellos que dan el 1 de la funcin en una tabla de verdad. Como la funcin puede ser 1 0 para cada trmino mnimo y ya que hay 2n trminos mnimos, se pueden calcular las funciones posibles que pueden formarse con n variables como 22n. Algunas veces es conveniente expresar la funcin de Boole en la forma de suma de trminos mnimos. Si no est en esta forma, se puede llegar a ella expandiendo primero la expresin a una suma de trminos AND. Luego se inspecciona cada trmino para ver si contiene todas las variables (dominio de la funcin). Si le hace falta una o ms variables, se aplica la funcin AND con una expresin tal como x + x', donde x sea una de las variables faltantes. El siguiente ejemplo aclara este procedimiento. EJEMPLO: Expresar la funcin de Boole F = A + B'C como suma de trminos mnimos. La funcin tiene tres variables: A, B y C. Como el primer trmino A no tiene las otras dos variables por tanto: A = A(B + B') = AB + AB' Como la expresin carece de una variable: A = AB(C + C') + AB'(C + C') = ABC + ABC' + AB'C + AB'C' El segundo trmino B'C carece tambin de una variable: B'C = B'C(A + A') = AB'C + A'B'C Combinando todos los trminos se obtendr: F= A+B'C = ABC + ABC' + AB'C + AB'C' + AB'C + A'B'C Pero como AB'C aparece dos veces, y de acuerdo al teorema (x + x = x), es posible quitar uno de ellos. Re arreglando los trminos en orden ascendente se obtendrn finalmente: F = A'B'C + AB'C' + AB'C + ABC' + ABC = m1 + m4 + m5 + m6 + m7 Es conveniente algunas veces, expresar la funcin de Boole cuando est compuesta de una suma de trminos mnimos por medio de la siguiente forma simplificada: F(A, B, C) = (1,4, 5, 6, 7) El smbolo de sumatoria implica los trminos a los cuales se les aplica la funcin OR o Los trminos entre parntesis son los trminos mnimos de la funcin. Las letras entre parntesis a continuacin de la F forman la lista de las

variables en el orden tomado cuando el trmino mnimo se convierte en un trmino AND. 4.3.2. Producto de trminos mximos Cada una de las 22n funciones de n variables binarias pueden expresarse como un producto de trminos mximos. Para expresar las funciones de Boole como un producto de trminos mximos se debe primero llevar a una forma de trminos OR Esto puede lograrse usando la ley distributiva x + yz= (x+y)(x+z) y si hay una variable x faltante en cada trmino OR se le aplicar la funcin OR conjuntamente con xx'. Este procedimiento se clarifica por medio del siguiente ejemplo: EJEMPLO: Expresar la funcin de Boole F = xy + x'z como un producto en la forma de trminos mximos. Primero convirtase la funcin a trminos OR usando la ley distributiva: F= xy + x'z = (xy + x')(xy + z) = (x + x')(y + x')(x + z)(y + z) = (x' + y)(x + z)(y + z) La funcin tiene tres variables: x, y y z. A cada trmino OR le hace falta una variable, por tanto: x' + y = x' + y + zz = (x' + y + z)(x' + y + z') x + z = x + z + yy' = (x +y + z)(x +y' + z) y + z = y + z + xx' = (x + y + z)(x' + y + z) Combinando todos los trminos y quitando aquellos que aparezcan ms de una vez se obtendr finalmente: F = (x + y + z)(x + y' + z)(x' + y + z)(x' + y + Z') = M0 M2 M4 M5 Una forma conveniente de expresar esta funcin es de la siguiente manera: F(x,y, z) = (0, 2, 4, 5) El smbolo de producto denota la aplicacin de la funcin AND a los trminos mximos. Los nmeros representan los trminos mximos de la funcin. 4.4. Mtodo del Mapa de Karnaugh Los mapas de Karnaugh constituyen un mtodo sencillo y apropiado para la minimizacin de funciones lgicas El tamao del mapa depende del nmero de variables, y el mtodo de minimizacin es efectivo para expresiones de hasta 6 variables. Representacin de funciones con mapas de Karnaugh.

Un mapa de Karnaugh es una representacin grfica de una tabla de verdad, y por lo tanto existe una asociacin univoca entre ambas la tabla de verdad tiene una fila por cada minitrminos. Mientras que el mapa de Karnaugh tiene una celda por cada minitrminos De manera anloga, tambin existe una correspondencia unvoca entre las filas de la tabla de verdad y las celdas del mapa de Karnaugh si se utilizan maxitrminos

Mapas de Karnaugh de 2 variables Consideremos ahora dos variables A y B que deben tener una representacin en K Cuatro son las formas posibles de combinar A y B A=0 y B=0, A=0 y B=1, A=1 y B=0. A=1 y B=1 Sea f una funcin de 2 variables f (A,B) Para elaborar el mapa de Karnaugh tendremos 22 = 4 combinaciones. En la figura se muestra la tabla de verdad con la lista de los minitrminos y el lugar que ocupa cada uno de ellos en un mapa

Mapas de Karnaugh de 3 variables Sea f una funcin de 3 variables f (A.B.C) Para elaborar el mapa de Karnaugh tendremos 23 = 8 combinaciones.

Antes de seguir con 4. 5 y 6 variables veamos cmo se representa una funcin en un mapa de Karnaugh 1. Desde la tabla de verdad Supongamos que tenemos la siguiente tabla de verdad para una funcin de 3 variables f(ABC): 2. Directamente desde una funcin. Para este caso la funcin puede ser o no cannica. Si es cannica. Por ejemplo la funcin ABC + ABC + ABC + ABC Si no es cannica. Pruebe a representar la funcin f( A,B,C)= AB +ABC + ABC

Problema Probar con Mapas de Karnaugh que ABC + ABC + ABC + ABC = AC + BC Mapas de Karnaugh de 4 variables Sea f una funcin de 4 variables: f(A.B.C.D) Para elaborar el mapa de Karnaugh tendremos 24 = 16 combinaciones

Mapas de Karnaugh de 5 variables Sea f una funcin de 5 variables: f (A.B,C,D,E) Para elaborar el mapa tendremos 25 = 32 combinaciones

Mapas de Karnaugh de 6 variables Sea f una funcin de 6 variables: f (A.B.C.D.E.F) Para elaborar el mapa tendremos 2a = 64 combinaciones

Simplificacin de funciones con mapas de Karnaugh Obtener la funcin de un Mapa de Karnaugh es el procedimiento inverso a la de la realizacin del mapa Un trmino de la funcin coloca uno o ms 'unos' en el mapa de Karnaugh Tomar esos unos, agrupndolos de la forma adecuada, nos permite obtener los trminos de la funcin. Utilizaremos los Mapas de Karnaugh para obtener una funcin mnima de dos niveles Suma de Productos. Forma de dos niveles ADYACENCA LOGICA

Terminologa para la simplificacin Implicante Primo, Implicante Primo Esencial Implicante: Conjunto de unos en un mapa de Karnaugh que representa un trmino producto de variables. Se denomina Implicante porque cuando este trmino toma el valor 1 implica que tambin la funcin toma el valor 1. Un minitrminos solo es un Implicante Primo. Implicante que no est incluido completamente dentro de otro Implicante no puede combinarse con otro Implicante para eliminar un literal. Implicante Primo Esencial. Implicante primo que contiene uno o ms minitrminos que no estn incluidos en cualquier otro Implicante primo. Algoritmo de minimizacin mediante mapas de Karnaugh. 1 Identificar los implicantes primos. Para este se busca obtener los grupos con mayor cantidad de unos adyacentes Los grupos deben contener un numero de unos que son potencias de 2

2 Identificar todos los implicantes primos esenciales 3 La expresin mnima se obtiene seleccionando todos los implicantes primos esenciales y el menor nmero de implicantes primos para cubrir los minitrminos no incluidos en los implicantes primos esenciales

Ejemplo Simplificar lo funcin F = ABCD + ABCD + ABCD + ABCD + ABCD + ABCD + ABCD + ABCD + ABCD Minimizacin en mapas de Karnaugh de 5 variables Simplificar la funcin = m(2,8,11,15,18,20,21,27,28,29,31). Se coloca un 1 en los minitrminos.

Minimizacin en mapas de Karnaugh de 6 variables Obtengo una funcin mnima para el siguiente mapa de Karnaugh

EJEMPLO 1. Minimice las siguientes funciones, empleando el mtodo de Karnaugh: F1 = Sumaminitrminos (0,1,3,8,9,11,16-17,19,24,25,29-31) F2 = Sumaminitrminos (0-4,6,9,10,15-20,22,23,25,26,31) SOLUCION Las siguientes figuras presentan los mapas K para F1 y F2:

Las funciones reducidas son: F1(A,B,C,D,E) = C'D' + (1) B'C'D (2) + ABCD (3) + A'BDE + ABD'E (4) (5)

F2(A,B,C,D,E) = B'C' + B'E' + C'D'E + C'DE' + AB'D + BCDE (1) (2) (3) (4) (5) (6) EJEMPLO 2. Hay 5 personas que actan como jueces en un competencia dada. El voto de cada uno de ellos se indica con un 1 (pasa) o 0 (fracasa) en un lnea de seal. Las 5 lneas de seal son las entradas a un circuito lgico combinacional. Las reglas de la competencia permiten slo la disensin de un voto. Si la votacin es 2-3 o 3-2, la competencia debe continuar. El circuito lgico debe tener dos salidas, XY. Si el voto es 4-1 o 5-0 para pasar, XY=11. Si el voto es 4-1 o 5-0 para fracasar, XY=00; si el voto es 3-2 o 2-3 para continuar, XY=10. Disee un circuito mnimo de suma de productos. SOLUCION La siguiente tabla agrupa las condiciones del enunciado:

OPCIN REGLA 1 0 XY

PARA PASAR 5 4 0 1 1 1 PARA FRACASAR 0 1 5 4 0 0 PARA CONTINUAR 3 2 2 3 1 0

En base a la tabla anterior, se construye la siguiente: TABLA FUNCIONAL DEC A B C D E X Y DEC A B C D E X Y 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 1 0 1 1 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 0 0 0 1 0 1 1 1

De la tabla funcional, se obtienen las siguientes funciones de conmutacin cannicas: X(A,B,C,D,E) = Sumaminitrminos (3,5-7,9-15,17-31) Y(A,B,C,D,E) = Sumaminitrminos (15,23,27,19-31)

Reduciendo por mapas de Karnaugh: Para mayor claridad, se presenta a X(A, B, C, D, E) en dos mapas:

El mapa para Y(A, B, C, D, E) es: Para ver el grfico seleccione la opcin "Descargar" del men superior De los mapas anteriores se tienen las siguientes funciones reducidas: X(A,B,C,D,E) = DE + BC + AB + AC + AE + AD + CE + CD + BE + BD (1) (10) Y(A,B,C,D,E) = ABCE + ABCD + ACDE + BCDE + ABDE (1) (2) (3) (4) (5) (2) (3) (4) (5) (6) (7) (8) (9)

PROBLEMAS MAPAS DE KARNAUGH 1. Un nmero primo es aquel que slo es divisible entre si mismo y la unidad. Disee un circuito lgico mnimo que detecte todos los nmeros primos entre 0 y 31. La salida F(A, B, C, D, E), donde E es la variable de mayor peso binario, ser igual a 1, si y slo si los cinco bits de entrada representan un nmero primo. 2. En uno de los laboratorios de una compaa qumico farmacutica se elaboran 14 distintas soluciones a partir de las componentes W, X, Y y Z. Estas sustancias pesan 800, 400, 200 y 100 mg, respectivamente. Las soluciones depositadas en frascos se transportan por medio de una banda hasta una bscula. Si el peso indicado en la bscula es uno de los siguientes: 200, 500, 700, 800, 1100, 1400 o 1500 mg, entonces un dispositivo electromecnico F, despus de agregar al compuesto la sustancia Q, sellar el frasco sobre la bscula y lo apartar de la banda; de otro modo, el frasco permanecer abierto y la banda lo transportar hacia otra etapa del proceso. Adems, por las condiciones previas del proceso, no es posible que lleguen a la bscula ni frascos vacos, ni frascos que contengan las siguientes sustancias: WY, YZ, WX o WZ; todas las dems combinaciones s pueden llegar hasta la bscula. Disee un circuito lgico combinatorio que controle el proceso. 3. En la torre de control de un patio de ferrocarril, un controlador debe seleccionar la ruta de los furgones de carga que entran a una seccin del patio, mismos que provienen del punto A, como puede verse en el tablero de control de la figura adjunta. Dependiendo de las posiciones de los conmutadores, un furgn puede llegar a uno cualesquiera de los cuatro destinos. Otros furgones pueden llegar desde los puntos B o C.

Disee un circuito combinatorio, que reciba como entradas las seales S1 a S5, indicadores de las posiciones de los conmutadores correspondientes, y que encienda una lmpara D0 a D3, indicando el destino al que llegar el furgn proveniente de A.

Para los casos en que los furgones puedan entrar de B o C (S2 o S3 en la posicin 0), todas las lmparas de salida deben encenderse, indicando que un furgn proveniente de A, no puede llegar con seguridad a su destino. NOTA: S1 bit de mayor peso binario. 4. Un circuito lgico tiene 5 entradas A, B, C, D y E (donde A es la de mayor peso binario). Cuatro de las entradas representan un dgito decimal en BCD (Decimal Codificado en Binario, por sus siglas en ingls). La primera entrada, A, es de control. Cuando el control est en 0 lgico, la salida Z es igual a 0 si el nmero decimal es impar y 1 si es par. Cuando el control est en 1 lgico, la salida Z es igual a 1 cuando la entrada en mltiplo de 3, en caso contrario es 0. Considerando las condiciones irrelevantes, disee un circuito lgico combinatorio minimo. NOTA: Considere al 0 como un nmero par. 5. Un tcnico de un laboratorio qumico tiene 4 productos A, B, C y D. Cada producto debe encontrarse en uno cualesquiera de dos recipientes de almacenamiento. Peridicamente, se requiere cambiar uno o ms productos de un recipiente a otro. La naturaleza de los productos es tal, que es peligroso guardar A y B juntos a menos que D est presente en el mismo recipiente. Tambin es peligroso almacenar B y C juntos a menos que D est presente. Este proceso no permite que alguno de los tanques est vaco. Obtener el circuito mnimo de la expresin de una variable Z que deber tener el valor de 0 para cada situacin peligrosa de almacenamiento. NOTA: Considere a A como la variable de mayor peso binario. 6. Un posicionador de eje, proporciona una seal de 4 bits que indica la posicin de un eje en pasos de 30. Utilizando el cdigo de Gray, el cual se muestra en la siguiente tabla, disee un circuito (realizacin mnima de suma de productos) que produzca una salida que indique en dnde se encuentra el eje. POSICIN DEL EJE SALIDA DEL POSICIN DECODIFICADOR DEL EJE SALIDA DEL DECODIFICADOR

0<= P <=30 0 30< P <=60 0 60< P <=90 0 90< P <=120 0 120< P <=150 0 150< P <=180 0

0 0 1 1 1 1

1 1 1 1 0 0

1 0 0 1 1 0

180< P <=210 1 210< P <=240 1 240< P <= 270 1 270< P <=300 1 300< P <=330 1 330< P <=360 1

1 1 1 1 0 0

0 0 1 1 1 1

0 1 1 0 0 1

7. Obtener el circuito lgico mnimo, de un circuito de 5 entradas: Dos de datos A y B y tres de control C2, C1 y C0.

La funcin de salida depende de los ocho posibles estados de las seales de control, de acuerdo a la siguiente tabla: CONTROL (DECIMAL) F 0 1 2 3 4 5 6 7 1 A+B (A B)' A OEX B (A OEX B)' AB (A + B)' 0

Considere a C2 y A como las variables de mayor peso binario, respectivamente.

8. En una fbrica un dispositivo con 5 fotoceldas (figura adjunta), registra los caracteres formados abriendo pequeas ranuras en una tarjeta de control. Si en la tarjeta registrada hay uno de los smbolos:

(Para el smbolo I son vlidas las dos posiciones), entonces el dispositivo acciona un taladro. En el proceso no hay tarjetas con alguno de los caracteres adjuntos:

(Todos los caracteres restantes si son vlidos) Cul es la funcin booleana a la salida del dispositivo que acciona el taladro? Minimizar la funcin lgica. 9. Se desea disear e instrumentar un circuito combinatorio mnimo de dos entradas con dos bits cada una, sobre las cuales se codifican dos de los cuatro tipos de sangra existentes y a su salida se obtenga una seal que informe sobre la posibilidad o imposibilidad de la transfusin de uno de ellos sobre el otro, dadas las siguientes reglas de compatibilidad entre ellos. Los tipos de sangre son 4: A, B, AB y O. El tipo O puede donar a cualquier otro tipo, pero slo puede recibir de l mismo. El tipo AB puede recibir de cualquier otro tipo pero slo puede donar a AB. La clase A puede donar a A o a AB y recibir de A u O nicamente. Por ltimo, el tipo B puede donar al mismo B o al tipo AB y recibir de B u O.

La seal de salida deber ser 1 cuando la transfusin propuesta en las entradas sea permitida.

10. En un sistema de deteccin luminosa que tiene el arreglo mostrado en la figura adjunta, se genera una seal de salida con valor de 1 nicamente cuando dos fotoceldas adyacentes estn activadas, siempre y cuando la fotocelda del centro est tambin activada. NOTA: No es posible, en este sistema, que exista una seal de salida 0 o 1 si no hay al menos tres fotoceldas activadas. Considerando a A como la variable ms significativa, obtener el circuito lgico mnimo, considerando las condiciones indiferentes. 11. Un robot de juguete -llamado U-2- est diseado para ser capaz de seguir una trayectoria (previamente programada por medio de controles que el robot tiene en la espalda) avanzando cuadro por cuadro en una rea de 5x6 cuadros. El robot U-2 puede realizar una de las cuatro acciones siguientes: (D) Girar (sobre su eje vertical) 90 a la derecha y luego avanzar al centro del siguiente cuadro si su pequeo cerebro recibe la seal binaria 01. (I) Girar 90 a la izquierda y luego avanzar al centro del siguiente cuadro si su diminuto cerebro percibe la seal binaria 10. (F) Avanzar al frente un cuadro si su cerebro recibe la seal 00. (A) Hacer alto si su cerebro recibe la seal 11. Programar el robot para que recorra el laberinto de la Figura (a). Determinar las funciones booleanas del par de estmulos binarios que recibe el minicerebro del robot durante este recorrido y minimizarlas mediante mapas de Karnaugh. (En este problema hay condiciones irrelevantes -parte de la solucin consiste en encontrarlas).

Los controles en la espalda del U-2 estn localizados en dos reas: En el rea I se indicar el cuadro inicial mediante los controles de dos posiciones a, b, c, d y e [como se muestra en la Figura (c)]; si el control a se presiona del lado derecho, el peso de la variable a se contabilizar para determinar el nmero asignado al cuadro inicial (lo mismo ocurrir para el resto de las variables). En el rea II se programa la trayectoria por medio de 30 controles de tres posiciones cada uno.

12. Cuatro tanques grandes en una planta qumica contienen lquidos diferentes sometidos a calentamiento. Se usan sensores de nivel del lquido para detectar si el nivel en el tanque A o B se eleva sobre un nivel predeterminado. Sensores de temperatura en los tanques C y D detectan cuando en cualquiera de estos la temperatura desciende de 'un lmite establecido. Suponga que las Salidas A y B del sensor de nivel del liquido son BAJAS cuando ste es satisfactorio y ALTAS cuando el nivel es demasiado

alto. Asimismo, las salidas del sensor de temperatura C y D son BAJAS cuando la temperatura es satisfactoria y ALTAS cuando es demasiado baja. Disee un circuito lgico que detecte si el nivel en el tanque A o B es muy alto al mismo tiempo que la temperatura en cualquier tanque C o D es demasiado baja.

13. En la figura se muestra la interseccin de una autopista con un camino de acceso secundario, Se colocan sensores de deteccin de vehculos a lo largo de los carriles Cy D (camino principal ) y A y B (camino de acceso). Las salidas del sensor son BAJAS (0) cuando no est presente ningn vehculo, y ALTAS (1) cuando est presente algn vehculo. El semforo de la interseccin deber funcionar de acuerdo con la siguiente lgica: El semforo E-O estar en verde siempre que ambos carriles, C y D, estn ocupados.. El semforo E-O estar en verde siempre que cualquier carril C o D est ocupado, pero los carriles A y B no lo estn. El semforo N-S estar en verde siempre que los carriles A y B estn ocupados, pero C y D no estn ocupados. El semforo N-S tambin estar en verde siempre que cualquiera de los carriles A o B estn ocupados, mientras C y D estn vacantes. El semforo E-O estar en verde cuando ningn vehculo est presente. Usando las salidas de los sensores A, B, C y D como entradas, disee un circuito lgico para controlar el semforo. Debe haber dos salidas, N-S y E-O, que pasarn a ALTAS cuando la luz correspondiente se ponga en verde. Simplifique el circuito tanto como sea posible y muestre todos los pasos.

E 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

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

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

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

A 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

ED\CBA 000

001

011 010 110 111 101 100

00 01 11 10

ED\CBA 000

001

011 010 110 111 101 100

00 01 11 10

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

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

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

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

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

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

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

A 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

DC\BA 00 01 11 10

00

01

11

10

DC\BA 00 01 11 10

00

01

11

10

DC\BA 00 01 11 10

00

01

11

10

DC\BA 00 01 11 10

00

01

11

10