El Mapa de Karnaugh
El mapa de Karnaugh es un procedimiento matricial usado para la simplificación de circuitos lógicos. Podemos usarlo como un recurso para optimizar la configuración de tablas lógicas sin alterar sus resultado. Decimos entonces que es una técnica que economiza la elaboración de circuitos digitales.
El procedimiento aquí explicado es práctico para funciones de 3 y 4 variables.
Antes de diseñar el mapa de Karnaugh, registramos en una tabla lógica las variables ABC que necesitamos procesar para obtener el resultado «Y» requerido. Por ejemplo, en la siguiente tabla lógica tenemos tres variables que arroja un 1 en su salida Y:

Tabla 1

Tabla 2
Antes de llevar a cabo la simplificación, miremos las funciones de la tabla 1 llevadas a un circuito lógico «en bruto«:

Tabla sin proceso de optimización
Podríamos dejarlo así, sin embargo quedaría relativamente voluminoso y costoso de implementar. Para optimizarlo, llevamos sus valores al mapa, ubicando cada 1 de la función ‘Y’ en su coordenada correspondiente.
Pasos para diseñar y simplificar con el Mapa de Karnaugh
El proceso de simplificación podemos llevarlo a cabo en 5 sencillos pasos:
1- Diseñamos la matriz definiendo sus coordenadas. Por ejemplo, digamos que al eje horizontal lo definimos con las variables AB, y al eje vertical con la variable C. Las variables deben ser complementarias, por eso marcamos las negadas con una línea superior ¯, ó con una comilla simple.
2- Trasladamos a la matriz las variables ABC de la tabla 2 correspondiente con el valor alto (1) de la salida «Y», en sus respectivas coordenadas; 1 para la coordenada A’BC’; otro 1 para la coordenada ABC’ y el último 1 para la A’BC. Estos valores reciben el nombre de ‘minterms‘.

Ubicamos los valores de la tabla lógica en la matriz para que tengamos los minterms.
3- A partir de aquí comenzamos con las operaciones de simplificación con el mapa de Karnaugh. Los ‘minterms‘ contiguos se suman, anulando las variables complementarias:

Proceso de simplificación
En este ejemplo la suma de los minterms de Z elimina la variable A, pues aparece en su forma complementaria (A’ y A). Esto se demuestra con la siguiente operación booleana:
Para efectos prácticos diremos que una variable se elimina cuando se complementa en las sumas.
Vea la construcción de un Sensor de Temperatura con Arduino, aquí
5- Finalmente la suma de Z + X nos da la combinación abreviada de variables de la tabla de verdad. Entonces con esto el circuito lógico queda simplificado, cumpliendo con la misma función lógica:

Función lógica simplificada. A la simulación se le adicionó un indicador (circulo amarillo) de estado alto (1) en la línea A,B y C. En la parte inferior se grafican los estados de cada variable; Rojo para A, Verde para B y Amarillo para C.
Usando la simplificación de circuitos lógicos, basada en este procedimiento, hemos optimizado un circuito lógico, reduciéndolo de 8 a 5 compuertas digitales.
Como podemos verlo, en cada negación va un inversor lógico.
Vea cómo mitigar la Obsolescencia Programada con Software Libre, aquí
Ejemplo de detección de números pares simplificado con Karnaugh
En este ejemplo tenemos un circuito que detecta números pares y tiene un LED que nos indica dicha detección. Procedemos elaborando la tabla de verdad:

Tabla 3. Extraemos las variables que tengan 1 en su salida Y
Trasladamos las funciones al mapa K y finalmente obtenemos la suma de las operaciones que nos dan el circuito lógico que detecta números pares:

Proceso de simplificación

Resultado
Llevamos las operaciones algebraicas a la electrónica y obtenemos un circuito digital perfectamente optimizado (simulación hecha en SimulIDE).
¿Pero por qué termina resumido en dos variables, A’D’ si en la tabla 3 vemos que la funcion Y se activa cuando C = 1?:
| A | B | C | D |
| 0 | 0 | 1 | 0 |
¿Qué sucedió ahí? Para responder eso, miremos estas dos filas donde Y = 1
| A | B | C | D | Y |
| 0 | 0 | 0 | 0 | 1 |
| 0 | 0 | 1 | 0 | 1 |
Aquí la C cambia pero Y no cambia. Entonces C no cambia la salida, por eso al emplear a Karnaugh la C se elimina. Precisamente para detectar esas cosas está diseñado el mapa de Karnaugh.
Y lo mismo sucede con la variable B.
Podemos usar las siguientes calculadoras para calcular y simular esta teoria.
Puede ampliar más sobre este tema, aquí
Continúa leyendo
Valora este artículo







Pingback: 🥇 Electrónica Digital - Operación NOT, OR, AND Memorias con Flip Flops