2. Introducción
Este trabajo tiene como propósito presentar uno de los métodos de simplificación de
funciones booleanas que es ampliamente utilizado en la actualidad debido a su sencillez y
eficacia para obtener las expresiones equivalentes: los mapas de Karnaugh.
Como es conocido, la expresión que obtenemos de una tabla de verdad genera un a
expresión algebraica compleja que da origen a un circuito lógico complejo y por lo mismo,
caro y energéticamente ineficiente. Haciendo uso de la simplificación por medio de los
mapas de Karnaugh, se nos posibilita obtener una expresión algebraica equivalente a la
original, que enuncia a la tabla de verdad deseada, pero con un menor numero de
componentes, haciéndolo más económico y mas eficiente.
Para poder explicar con un mejor detalle este método, se dará una explicación sobre
diversos términos referidos a este, como lo son los minitérminos, subcubos, implicantes
primos y expresiones adyacentes. Para este último, se plasmará un conjunto de reglas que
explican ampliamente cuando se puede determinar la adyacencia de las celdas del
diagrama utilizado para los mapas de Karnaugh.
Para poder ejemplificar todos los términos teóricos que se tratan, se incluyen ejemplos
prácticosde la técnica aplicada para tres y cuatro variables, explicándose algunas de las
maneras posibles de simplificar la expresión raíz a expresiones más sencillas.
2
3. Mapas de Karnaugh
El tema de simplificación de expresiones booleanas es uno de los más importantes dentro del
estudio de sistemas digitales, ya que permiten obtener circuitos equivalentes al circuito original
con una menor cantidad de componentes, ahorrándonos de esta forma dinero y electricidad.
Por ejemplo, un circuito que requiere cinco compuertas AND y una OR, se podría simplificar a un
circuito en el que solo requeriríamos solo una compuerta AND y una OR.
Como explicación a que se debe esto, debemos saber que una función booleana expresada en
forma algebraica puede aparecer de muchas formas, sin embargo, la expresión con una tabla de
verdad es única. Para obtener una expresión equivalente simplificada de una función booleana
expresada en forma algebraica se puede utilizar los postulados de Huntington y teoremas
booleanos, sin embargo no existe un mecanismo específico utilizando este método.
Un sistema que es ampliamente empleado es el conocido método de mapas. Este método
representa una forma simple y directa de minimizar las funciones booleanas expresadas en su
tabla de verdad. En este caso, el termino mapa se refiere a un diagrama compuesto por cuadros,
cada uno de los culés representa un minitérmino.
El sistema mas conocido de este método son los mapas de Karnaugh, los cuales sirven
principalmente para minimizar expresiones del tipo suma de productos o productos de sumas,
dando como resultado otra suma de productos o productos de suma que es equivalente a la raíz,
sin embargo más sencilla, obteniéndose mediante la representación de la función en el
cuadriculado y obteniéndose directamente la forma canónica, considerando los unos y los ceros
obtenidos del diagrama.
La propiedad más importante del mapa de Karnaugh es la adyacencia de las celdas, ya que si en
dos celdas adyacentes existen minitérminos, o unos, se puede efectuar la operación de sacar
factor común entre celdas y eliminar una variable, es importante tomar en cuenta que dos celdas
son adyacentes si no difieren en más de un bit.
Las reglas de adyacencia de los mapas de Karnaugh son:
1) Una celda es adyacente a todas las que tiene al lado.
2) Una celda no es adyacente a las que están en diagonal.
3) Celdas que difieren en más de un dígito no son adyacentes.
4) Las celdas de la primera fila son adyacentes a las de la última.
5) Las celdas de la primera columna son adyacentes a las de la última.
6) Las cuatro esquinas del mapa son adyacentes, siempre que todas tengan el mismo digito.
7) Una celda puede ser adyacente a más de una celda simultáneamente.
8) Solo se pueden agrupar grupos pares de celdas adyacentes.
3
4. Como ya se mencionó anteriormente, este es un método para encontrar la forma más simplificada
de representar una función lógica, permitiendo una función que relacione todas las variables
empleando la mínima expresión. Para ello se deben aclarar varios términos importantes:
1) Minitérmino: se refiere a cada de las combinaciones posibles de todas las variables
disponibles, por ejemplo, con 2 variables se obtienen 4 minitérminos, con 3 variables se
obtienen 8 minitérminos, con 4 se obtienen 16, etc., es decir, la cantidad de minitérminos
esta definido por 2n, donde n es la cantidad de variables.
2) Subcubos: son referidos a lazos de entre minitérminos de orden 2n, es decir, son grupos de
2n celdas adyacentes que comparten el resultado de la función booleana.
3) Implicantes primos: son los mayores subcubos que se pueden encontrar en un diagrama,
pudiendo inclusive compartir minitérminos entre si. Están catalogados en:
a. Término esencial: se da cuando por lo menos un minitérmino no se encuentra
compartido por ningún subcubo y debe aparecer necesariamente en el resultado
final.
b. Término no esencial: cuando un implicante primo tiene todos sus minitérminos
compartidos con otros implicantes primos y por ende no debe aparecer en el
resultado final.
4) Numeración de un minitérmino: cada minitérmino es numerado en decimal de acuerdo
con la combinación de variables, como se aprecia a continuación:
El mapa de Karnaugh representa la misma tabla de la verdad por medio de una matriz,
donde en la primera fila y la primera columna se indican las posibles combinaciones de
variables, como se presentan en el ejemplo siguiente:
5) Valor lógico de un minitérmino: son los que están señalados en rojo en las imágenes
anteriores. Estos deben de tener un valor lógico y son el resultado realizado entre las
variables, siendo lógicamente 1 o 0. Para obtener el valor que corresponde a cada
minitérmino, nos debemos de basar en la tabla de verdad y colocamos el valor
correspondiente a cada combinación.
4
5. Ahora bien, conociendo los términos fundamentales referidos a los mapas de Karnaugh, se puede
abordar con más énfasis el método.
Para una simplificación mediante un mapa de Karnaugh se debe considerar dos reglas:
1) Representar la función en el diagrama
2) Determinar los implicantes primos, para lo cual se debe:
a) Enlazar cada uno de los minitérminos aislados no adyacentes a ningún otro minitérmino.
b) Enlazar los pares de unos adyacentes entre si que no puedan formar un grupo de mayor
orden.
c) Continuar la búsqueda de grupos de mayor orden hasta completar todos los unos de la
función.
d) Determinar los implicantes primos esenciales.
e) Los unos de la función que no han sido enlazados por dichos términos esenciales, deben
ser cubiertos con el menor número de implicantes no esenciales.
3) Obtener el factor común de cada implicante primo obtenido y lograr descartar los valores
posibles.
Visto de una forma mas simple la ultima regla, se puede ejemplificar de la siguiente manera:
M0 M1 M2 M3
M4 M5 M6 M7
YZ
X 00 01 10 11
0 X’Y’Z’ X’Y’Z X’YZ’ X’YZ
1 XY’Z’ XY’Z XYZ’ XYZ
Como se apreciar, cualquier par de celdas adyacentes tienen al menos 2 términos iguales.
Mediante los postulados del álgebra booleana, podemos concluir que la suma de dos celdas
adyacentes se puede simplificarse a un solo termino AND constituido por dos variables. Para
demostrarlo, podemos considerar la suma de dos minitérminos adyacentes, como M5 y M1:
M1 M 5
X 'Y ' Z XY ' Z Y 'Z (X ' X ) Y 'Z
5
6. Para ejemplificar todo lo anterior gráficamente, usemos la siguiente tabla de verdad de tres
variables:
Según los datos que nos suministra la tabla, se deduce que la forma canónica u original de la
función booleana es:
S X 'Y ' Z X ' YZ XY ' Z ' XY ' Z XYZ
Ordenando los datos en el mapa de Karnaugh, se obtiene un diagrama como el siguiente.
Una de las simplificaciones que se pueden obtener es mediante la agrupación de todos los pares
de celdas adyacentes con término 1. Podemos apreciar que existen dos grupos que comparten
una de las celdas.
6
7. Por lo tanto, la expresión booleana que obtenemos con esta simplificación es:
S X 'Z XY ' XZ
Sin embargo, por los postulados de los mapas de Karnaugh mencionados anteriormente, podemos
realizar agrupaciones de 2n términos, por lo que podemos intentar realizar una agrupación de 22
términos dentro del diagrama. De esta manera, si hacemos un grupo de cuatro términos
obtenemos:
Con lo que obtenemos la siguiente expresión booleana:
S Z X 'Y '
Ahora bien, los mapas de Karnaugh no son exclusivos para funciones de tres variables, si no que
pueden funcionar para n cantidad de variables, lo importante es su acomodo en el cuadriculado.
También es importante destacar que una de las configuraciones con las que nos vamos a
encontrar frecuentemente es la de cuatro variables. Para ejemplificar esta situación, usaremos la
siguiente función booleana extensa:
S A ' B ' C ' D ' A ' BC ' D ' ABC ' D ' AB ' C ' D ' A ' BC ' D ABC ' D AB ' C ' D ABCD AB ' CD A ' B ' CD ' A ' BCD ' ABCD ' AB ' CD '
Esta expresión, una vez la acomodamos en un mapa de Karnaugh, obtenemos el siguiente
diagrama:
7
8. Mediante una de las acomodaciones de grupos que son posibles en este ejemplo, podemos
encontrar un agrupamiento sencillo, el que agrupa ocho de los minitérminos, como lo vemos a
continuación:
Con la simplificación de los implicantes primos que vimos
anteriormente, en este ejemplo podemos obtener los siguientes
valores:
Término I: A
Término II: BC’
Término III: A’CD’
Termino IV: A’B’C’D
Según todos los resultados que obtuvimos de esta simplificación, la nueva función booleana sería:
S A ' B ' C ' D ' A ' CD ' BC ' A
Sin embargo, esta no es su expresión más simple. Como se explicó previamente, la primer fila es
adyacente con la ultima, de la misma forma, la primer columna es adyacente con la ultima,
pudiéndose expresar de una mejor manera, posee un comportamiento similar a un cilindro, según
su necesidad. De esta forma, se nos es posible unir los minitérminos de la fila superior con los de la
fila inferior, permitiéndonos un segundo grupo de ocho valores. También es importante destacar
que al agrupar, es posible agrupar todos los “unos” adyacentes, aunque estos ya hayan sido
incluidos en otros grupos. Estos dos casos los podemos apreciar en el agrupamiento que se
presenta a continuación:
En este diagrama podemos apreciar que el termino III crea un grupo de ocho minitérminos
haciendo uso de la primer y ultima filas del diagrama, así como también el minitérmino 1100 esta
incluido en las tres agrupaciones.
La función booleana que obtenemos de esta simplificación es la siguiente:
8
9. S D ' BC ' A
Un aspecto que es importante destacar es el acomodo de las variables en el diagrama de cuatro
variables, el cual puede variar a gusto de quien lo utilice, respetando siempre el grupo de parejas
de variables, pudiendo acomodarlos como lo se muestra a continuación:
9
10. Conclusión
Con forme a lo desarrollado en el presente trabajo, podemos asegurar que el método de
mapas de Karnaugh son una herramienta sumamente practica durante la implementación
de circuitos digitales, ya que al permitirnos simplificar la expresión original obtenida de la
tabla de verdad que deseamos alcanzar a una más sencilla que cumple el mismo objetivo,
logramos una importante reducción de costos, una mejor eficiencia en el consumo
energético y un circuito final simplificado.
A su vez, nos explica terminología básica para entender de una mejor manera la técnica
aplicada, así de ejemplos de aplicación con tres y cuatro variables, que nos permiten ver
de una manera cual es la forma en la que se aplica en cada uno de los casos para obtener
la mejor expresión equivalente que sea posible.
De esta forma, con la elaboración de este trabajo, se intenta brindar un perfil que permita
expresar de una manera eficaz y sencilla el método de simplificación mediante los mapas
de Karnaugh, brindando el conocimiento para obtener la expresión más simplificada de
una función booleana extensa.
Con esto, se pretende que el trabajo que se presenta sea provechoso para comprender de
una manera práctica sobre este tema.
10
11. Bibliografía
1. Costantini, Sandro; Arquitectura del Computador, Guía 7: Mapas de Karnaugh; UNIMET,
Caracas, Venezuela
2. Gómez, Carlos; Diagramas o Mapas de Karnaugh; InstitutoTecnológico de Computación,
Cuidad de Panamá, Panamá
3. DíazGarcía, José Alberto; Simplificación de funciones lógicas utilizando Karnaugh, Escuela
de IngenieríaElectrónica, InstitutoTecnológico de Costa Rica, Cartago, Costa Rica
4. Pérez, Cinthya; Simplificación de Funciones Booleanas. (Mapas de Karnaugh); Instituto
Tecnológico Buenos Aires, Buenos Aires, Argentina
11