bitGateLab Digital · Aprende Abrir el simulador

Aprende › Tema 4

Mapas de Karnaugh de 2, 3 y 4 variables con condiciones X

Lectura de 7 min · Equipo bitGateLab

Simplificar con álgebra de Boole funciona, pero depende de que "veas" qué ley aplicar. El mapa de Karnaugh convierte esa búsqueda en un ejercicio visual: acomoda la tabla de verdad en una cuadrícula donde las celdas vecinas difieren en una sola variable, y simplificar se vuelve encerrar grupos de unos. Aquí vas a aprender a construir mapas de 2, 3 y 4 variables, a agrupar correctamente (incluidos los bordes que "dan la vuelta") y a aprovechar las condiciones "no importa".

La idea: celdas vecinas, una variable de diferencia

La ley de adyacencia dice que AB + AB = A: dos términos que difieren en una sola variable se fusionan y esa variable desaparece. El mapa de Karnaugh acomoda los minitérminos de manera que cualquier par de celdas que comparten un lado cumplan esa condición. Para lograrlo, los encabezados de filas y columnas no siguen el orden binario 00, 01, 10, 11, sino el código Gray: 00, 01, 11, 10. Entre dos valores consecutivos cambia solo un bit, y también entre el último y el primero (10 y 00). Por eso el mapa se comporta como si sus bordes opuestos estuvieran pegados.

Mapas de 2 y 3 variables

El mapa de dos variables tiene 4 celdas: A en las filas y B en las columnas. El de tres variables tiene 8 celdas: A en las filas y BC en las columnas, en orden Gray. El número dentro de cada celda indica el minitérmino que le corresponde:

A \ BC00011110
0m0m1m3m2
1m4m5m7m6

Fíjate que m3 y m2 quedan en ese orden: es el efecto del código Gray, y la causa de muchos errores al llenar el mapa a mano.

Reglas de agrupación

Para leer un grupo, revisa cada variable: si conserva el mismo valor en todas las celdas del grupo, aparece en el término (sin barra si vale 1, con barra si vale 0); si cambia, se elimina.

Ejemplo 1: tres variables. Simplifica F(A, B, C) = Σm(1, 3, 4, 5, 7).

A \ BC00011110
00110
11110
  1. Las columnas 01 y 11 están completas: un grupo de 4 (m1, m3, m5, m7). En él A cambia, B cambia y C siempre vale 1. Término: C.
  2. Queda m4. Se agrupa con m5 (vecino a la derecha): A = 1, B = 0 en ambas, C cambia. Término: AB.
  3. F = C + AB.

Comprueba m6 (110): C = 0 y AB = 0, así que F = 0, igual que en el mapa.

Mapa de 4 variables y adyacencia en los bordes

Con cuatro variables el mapa tiene 16 celdas: AB en las filas y CD en las columnas, ambos en orden Gray.

AB \ CD00011110
00m0m1m3m2
01m4m5m7m6
11m12m13m15m14
10m8m9m11m10

La columna izquierda es vecina de la derecha, y la fila superior es vecina de la inferior. En consecuencia, las cuatro esquinas (m0, m2, m8, m10) forman un grupo válido de 4 celdas: en todas B = 0 y D = 0, así que se leen como BD.

Ejemplo 2: grupos que cruzan los bordes. Simplifica F(A, B, C, D) = Σm(0, 1, 2, 5, 8, 9, 10).

AB \ CD00011110
001101
010100
110000
101101
  1. m0, m1, m8, m9: columnas 00 y 01 de las filas superior e inferior (vecinas por el borde). B = 0 y C = 0. Término: BC.
  2. m0, m2, m8, m10: las cuatro esquinas. Término: BD.
  3. Queda m5 (0101). Su mejor vecino con 1 es m1 (0001): A = 0, C = 0, D = 1 y B cambia. Término: ACD.
  4. F = BC + BD + ACD.

Pasaste de 7 minitérminos de 4 literales (28 literales) a 3 términos con 7 literales en total.

Condiciones "no importa" (X)

A veces ciertas combinaciones de entrada nunca ocurren, o su salida no tiene consecuencias. Por ejemplo, en un dígito BCD los códigos 1010 a 1111 no existen. En esos renglones se escribe una X (también llamada don't care) y se anota aparte como d(...). Al agrupar, cada X puede tomarse como 1 si te ayuda a formar un grupo más grande, o ignorarse si no. Nunca hace falta cubrir una X.

Ejemplo 3: con condiciones X. Simplifica F(A, B, C, D) = Σm(1, 3, 7, 11, 15) + d(0, 2, 5).

AB \ CD00011110
00X11X
010X10
110010
100010
  1. La columna CD = 11 está llena (m3, m7, m15, m11): término CD.
  2. Falta m1. Tomando las X de m0 y m2 como unos, la fila superior completa es un grupo de 4: término AB.
  3. F = CD + AB.

Hay otra solución igual de buena: tomar la X de m5 y agrupar m1, m3, m5, m7, que da AD. Entonces F = CD + AD. Las dos tienen 2 términos y 4 literales, y ambas coinciden en todos los renglones que sí importan. Que una función tenga más de una forma mínima es normal.

Sin las X, m1 solo podría agruparse con m3 y quedaría ABD, con un literal más. Las condiciones "no importa" son ahorro gratuito: no las desperdicies.

Errores comunes

Pruébalo en el simulador

El módulo de mapas de Karnaugh acomoda la función en orden Gray, marca los grupos y escribe la expresión mínima, así que puedes comparar tu agrupación con la que propone la herramienta.

  1. Crea una función de cuatro variables y captura los unos del ejemplo 2.
  2. Agrupa tú primero en papel y escribe tu resultado.
  3. Observa los grupos que marca el mapa y la expresión resultante; si difiere de la tuya, revisa qué grupo no era máximo.
  4. Captura el ejemplo 3 marcando como X las celdas 0, 2 y 5, y observa cómo cambia la simplificación al quitar esas X.
  5. Convierte el resultado a circuito y cambia las entradas para confirmar que coincide con la tabla.

Ejercicios

  1. Simplifica F(A, B, C) = Σm(0, 2, 4, 6).
    Respuesta

    Las columnas BC = 00 y BC = 10 son vecinas por el borde y están llenas. En las cuatro celdas C = 0: F = C.

  2. Simplifica F(A, B, C, D) = Σm(0, 2, 5, 7, 8, 10, 13, 15).
    Respuesta

    Esquinas: BD. Bloque central m5, m7, m13, m15: BD. F = BD + BD, que es la XNOR de B y D.

  3. Simplifica F(A, B, C, D) = Σm(4, 5, 6, 7, 12, 13, 14, 15).
    Respuesta

    Las filas AB = 01 y AB = 11 forman un grupo de 8; solo B se mantiene en 1. F = B.

  4. Un dígito BCD (A es el bit más significativo) debe encender una salida cuando vale 5 o más. Simplifica F = Σm(5, 6, 7, 8, 9) + d(10, 11, 12, 13, 14, 15).
    Respuesta

    Con las X, las filas AB = 11 y AB = 10 forman un grupo de 8: A. El bloque m5, m7, m13, m15 da BD y el bloque m6, m7, m14, m15 da BC. F = A + BD + BC = A + B(C + D).

Cuando hay más de cuatro o cinco variables el mapa se vuelve difícil de leer; para esos casos existe un procedimiento tabular, el método de Quine-McCluskey.