Anda di halaman 1dari 7

Mapas de Karnaugh

Los Mapas de Karnaugh son una herramienta muy utilizada para la simplificacin de circuitos lgicos. Cuando se tiene una funcin lgica con su tabla de verdad y se desea implementar esa funcin de la manera ms econmica posible se utiliza este mtodo. Ejemplo: Se tiene la siguiente tabla de verdad para tres variables. Se desarrolla la funcin lgica basada en ella. (primera forma cannica). Ver que en la frmula se incluyen solamente las variables (A, B, C) cuando F cuando es igual a "1". Si A en la tabla de verdad es "0" se pone A, si B = "1" se pone B, Si C = "0" se pone C, etc.

F = A B C + A B C + A BC + A B C + A B C + A B C Una vez obtenida la funcin lgica, se implementa el mapa de Karnaugh.

Este mapa tiene 8 casillas que corresponden a 2n, donde n = 3 (nmero de variables (A, B, C)) La primera fila corresponde a A = 0 La segunda fila corresponde a A = 1 La primera columna corresponde a BC = 00 (B=0 y C=0)

La segunda columna corresponde a BC = 01 (B=0 y C=1) La tercera columna corresponde a BC = 11 (B=1 y C=1) La cuarta columna corresponde a BC = 10 (B=1 y C=0) En el mapa de Karnaugh se han puesto "1" en las casillas que corresponden a los valores de F = "1" en la tabla de verdad. Tomar en cuenta la numeracin de las filas de la tabla de verdad y la numeracin de las casillas en el mapa de Karnaugh. Para proceder con la simplificacin, se crean grupos de "1"s que tengan 1, 2, 4, 8, 16, etc. (slo potencias de 2). Los "1"s deben estar adyacentes (no en diagonal) y mientras ms "1"s tenga el grupo, mejor. La funcin mejor simplificada es aquella que tiene el menor nmero de grupos con el mayor nmero de "1"s en cada grupo

Se ve del grfico que hay dos grupos cada uno de cuatro "1"s, (se permite compartir casillas entre los grupos). La nueva expresin de la funcin boolena simplificada se deduce del mapa de Karnaugh. - Para el primer grupo (rojo): la simplificacin da B (los "1"s de la tercera y cuarta columna) corresponden a B sin negar) - Para el segundo grupo (azul): la simplificacin da A (los "1"s estn en la fila inferior que corresponde a A sin negar) Entonces el resultado es F = B + A F = A + B Ejemplo: Una tabla de verdad como la de la derecha da la siguiente funcin booleana: F = ABC + AB C + A B C + A B C

Se ve claramente que la funcin es un reflejo del contenido de la tabla de verdad cuando F = "1" Con esta ecuacin se crea el mapa de Karnaugh y se escogen los grupos. Se lograron hacer 3 grupos de dos "1"s cada uno. Se puede ver que no es posible hacer grupos de 3, porque 3 no es potencia de 2. Se observa que hay una casilla que es compartida por los tres grupos. La funcin simplificada es: F = AB + A C + B C Grupo en azul: AB, grupo marrn:AC, grupo verde:BC

A estas alturas ya estamos muy familiarizados con las funciones de todos los operadores lgicos y sus tablas de verdad, todo vino bien..., pero... qu hago si dispongo de tres entradas (a, b y c) y deseo que los estados altos slo se den en las combinaciones 0, 2, 4, 5 y 6 (decimal)...? Cmo combino las compuertas...? y lo peor, Qu compuertas utilizo...?. No te preocupes, yo tengo la solucin, ...pgate un tiro... :o)) Bueno... NO...!!!, mejor no. Tratar de dar una solucin verdadera a tu problema, preparado...? Mapas de Karnaugh Podra definirlo como un mtodo para encontrar la forma ms sencilla de representar una funcin lgica. Esto es... Encontrar la funcin que relaciona todas las variables disponibles de tal modo que el resultado sea el que se est buscando. Para esto vamos a aclarar tres conceptos que son fundamentales a)- Minitrmino Es cada una de las combinaciones posibles entre todas las variables disponibles, por ejemplo con 2 variables obtienes 4 minitrminos; con 3 obtienes 8; con 4, 16 etc., como te dars cuenta se puede encontrar la cantidad de minitrminos haciendo 2n donde n es el nmero de variables disponibles. b)- Numeracin de un minitrmino Cada minitrmino es numerado en decimal de acuerdo a la combinacin de las variables y su equivalente en binario as...

Bien... El Mapa de Karnaugh representa la misma tabla de verdad a travs de una matriz, en la cual en la primer fila y la primer columna se indican las posibles combinaciones de las variables. Aqu tienes tres mapas para 2, 3 y 4 variables...

Analicemos el mapa para cuatro variables, las dos primeras columnas (columnas adyacentes) difieren slo en la variable d, y c permanece sin cambio, en la segunda y tercer columna (columnas adyacentes) cambia c, y d permanece sin cambio, ocurre lo mismo en las filas. En general se dice que... Dos columnas o filas adyacentes slo pueden diferir en el estado de una de sus variables Observa tambin que segn lo dicho anteriormente la primer columna con la ltima seran adyacentes, al igual que la primer fila y la ltima, ya que slo difieren en una de sus variables c)- Valor lgico de un minitrmino (esos que estaban escritos en rojo), bien, estos deben tener un valor lgico, y es el que resulta de la operacin que se realiza entre las variables. lgicamente 0 1 Listo... Lo que haremos ahora ser colocar el valor de cada minitrmino segn la tabla de verdad que estamos buscando... diablos...!!! en este momento no se me ocurre nada, bueno si, trabajemos con esta...

El siguiente paso, es agrupar los unos adyacentes (horizontal o verticalmente) en grupos de potencias de 2, es decir, en grupos de 2, de 4, de 8 etc... y nos quedara as...

Te preguntars que pas con la fila de abajo... bueno, es porque no estas atento...!!! Recuerda que la primer columna y la ltima son adyacentes, por lo tanto sus minitrminos tambin lo son. De ahora en ms a cada grupo de unos se le asigna la unin (producto lgico) de las variables que se mantienen constante (ya sea uno o cero) ignorando aquellas que cambian, tal como se puede ver en esta imagen...

Para terminar, simplemente se realiza la suma lgica entre los trminos obtenidos dando como resultado la funcin que estamos buscando, es decir... f = (~a . ~b) + (a . ~c) Puedes plantear tu problema como una funcin de variables, en nuestro ejemplo quedara de esta forma... f(a, b, c) = S(0, 1, 4, 6) F es la funcin buscada (a, b, c) son las variables utilizadas (0, 1, 4, 6) son los minitrminos que dan como resultado 1 o un nivel alto. S La sumatoria de las funciones que producen el estado alto en dichos minitrminos. Slo resta convertir esa funcin en su circuito elctrico correspondiente. Veamos, si la funcin es... f = (~a . ~b) + (a . ~c) o sea... (NOT a AND NOT b) OR (a AND NOT c) El esquema elctrico que le corresponde es el que viene a continuacin...

El resultado de todo este lo, es un circuito con la menor cantidad de compuertas posibles, lo cual lo hace ms econmico, por otro lado cumple totalmente con la tabla de verdad planteada al inicio del problema, y a dems recuerda que al tener menor cantidad de compuertas la transmisin de datos se hace ms rpida.

En fin... Solucionado el problema...!!! Por cierto, un da, mientras merodeaba por la red me encontr con un pequeo programa que hace todo este trabajo por tu cuenta, El programa se llama Karma Creado por Pablo Fernndez Fraga, mis saludos Pablo...!!! est muy, pero muy bueno...!!! Basta por hoy, muy pronto utilizaremos toda esta teora y el programa de pablo (Karma) para disear una tarjeta controladora de motores paso a paso, mientras tanto averigua como funcionan estos motores.

Anda mungkin juga menyukai