Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Mapas de Karnaugh
Mapas de Karnaugh
5. 5.1.
Es la representacin grfica de una funcin booleana ms utilizada en sistemas digitales. Existe una relacin uno a uno entre un mapa y una tabla de verdad. Una tabla tiene un rengln por cada mintrmino; y un mapa, como se ver, tiene un casillero o cuadro para cada mintrmino. El mapa tambin puede ser considerado una extensin de los diagramas de Venn. Consideremos un diagrama de Venn para dos variables A y B:
A A B A B A B
A B
Si el orden de la variables para la asignacin del cdigo de mintrminos es AB, se puede rotular el diagrama con el nmero decimal asociado al mintrmino, queda:
A 2 3 1
0
Puede observarse que resultan reas desiguales para cada mintrmino; y que el grfico refleja las adyacencias entre mintrminos, pero no tan claramente como un 2-cubo, el cual se muestra en la figura siguiente:
2 3 B C
05-09-2012
68
UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO211 Sistemas Digitales
En un mapa de Karnaugh se adopta un rea igual, de forma cuadrada, para cada mintrmino; y adems, estos cuadrados se disponen de tal forma que reflejen las adyacencias. Se ha superpuesto el 2-cubo, con un mapa de dos variables.
A B 0 1 0 0 1 1 2 3 A
B C f(A,B)
La identificacin de los cuadros con el nmero del mintrmino, depende de la eleccin del orden de las variables que se haya elegido para la representacin decimal equivalente. Por ejemplo, para dos variables A y B:
B 0 1
0 2
1 3
B 0 1
0 1
2 3
f(A,B)
f(B,A)
La representacin de funciones mediante mapas, se logra marcando los mintrminos presentes con un "1"; los ceros suelen omitirse. Por ejemplo, las funciones AND y OR , de dos variables, se representan en mapas segn:
B 0 1
0 0
0 2
1 0
1 3
B 0 1
0 2
1 1
1 3
f1(A,B)=A B
Ntese que f1=m3 ; y que f2=m1+m2+m3.
f2(A,B)=A + B
05-09-2012
69
UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO211 Sistemas Digitales
Mapa para tres variables. Para tres variables A, B y C, se ilustran los mintrminos en un diagrama de Venn y en un 3-cubo:
B A 4 5 C 6 7 1 3 0 1 C
La siguiente figura muestra un desarrollo de un 3-cubo. Ntese que al abrir las caras del cubo, los mintrminos que estn a distancia uno, quedan adyacentes(exceptuando los de la cara que no se representa en el plano). Los cdigos de los mintrminos quedan ordenados segn cdigo Gray. El 3cubo muestra tambin la propiedad del cdigo Gray de ser reflejado.
B 0
2 4 3
6 A 7
A=0 0 2
B=1 6
A=1 4
3 1
f(A, B, C)
El siguiente diagrama muestra el desarrollo de un 3-cubo sobre el mapa de Karnaugh de tres variables:
C 0 1
00
0
01
11
6
10
4
f(A, B, C)
05-09-2012
70
UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO211 Sistemas Digitales
Ntese que m0 es adyacente a m1, m2 y m4. Entonces, en un mapa de Karnaugh se considera que los bordes son coincidentes, lo cual tambin refleja que la propiedad del cdigo Gray de ser cclico. Es decir, un cilindro en este caso, y se suele mostrar el desarrollo en el plano.
El mapa para tres variables puede obtenerse con dos mapas de dos variables. Resulta prctico colocar en un borde de cada cuadrado el nmero del mintrmino. De esta forma, resulta cmodo expresar una forma cannica en un mapa.
5.2.
Formas de Mapas
A continuacin se ilustran mapas, para 3, 4 y 5 variables. Los valores de columnas y renglones se ordenan empleando cdigo Gray, para reflejar mejor las adyacencias. El orden de las variables, para la representacin decimal equivalente del mintrmino, figura en la base del mapa.
AB CD AB C 0 1 f(A, B, C) 00
0 1
00
01
2 3
11
6 7
10
00
4
0 1
01
4 5 7 6
11
12 13
10
8 9
01
5
11 10
3 2
15 14
11 10
f(A, B, C, D)
Ntese que el mapa de 5 variables se obtiene a partir de dos mapas para n = 4. A uno se le antecede un cero en la codificacin de las columnas y al otro un 1.
05-09-2012
71
UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO211 Sistemas Digitales
ABC 000 DE 00 01 11 10
001
4 5 7 6
011
12 13
010
8 9
110 24
0 25 27 26
111
28 29 31 30
101
20 21
100
16
1 3 2
17 19 18
15 14
11 10
23 22
f(A, B, C, D, E)
Sin embargo esta forma de generar mapas, no refleja bien las adyacencias. Otra forma es una representacin en el espacio:
A=1 A=0
100 101 16
0 17 19
20 21 23 22
111 110
28
24
29 31 30
25 27 26
ABC DE 000 00 01 11 10
001
4 5 7 6
011
12 13
010
8 9
18
1 3 2
f(A, B, C, D, E)
15 14 11 10
UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO211 Sistemas Digitales
Un mapa de n variables tiene 2n cuadros. Cada bloque o casillero de un mapa de n variables, tiene n bloques adyacentes; es decir, los cdigos binarios de los mintrminos estn a distancia uno. Un bloque est asociado a un producto que contiene las n variables, pudiendo stas estar o no complementadas. Agrupando dos bloques adyacentes, se logra una expresin tipo producto de (n-1) variables. Esto empleando: . Esto, considerando que dos bloques adyacentes difieren en slo una variable, ya que estn a distancia 1. Los bloques pueden agruparse en un nmero que es una potencia de dos; es decir: 2, 4, 8, 16... Agrupando 2k bloques, que forman un k-cubo, la expresin booleana asociada es la que resulta de eliminar k variables de las n correspondientes a un mintrmino. Los siguientes mapas ilustran el concepto de agrupaciones.
a = ab + ab
Ejemplo:
AB CD 00 01 11 10
00 0
0 1
01 0
4 5
11 1
12 13
10 1
AB
8 9
CD 00 01
00 0
0 1
01 0
4 5
11 1
12 13
10 0
8 9
0
3
0
7
1
15
1
11
0
3
0
7
1
15
0
11
0
2
0
6
1
14
1
10
11 10
0
2
0
6
1
14
0
10
f(A, B, C, D)=A
f(A, B, C, D)=AB
05-09-2012
73
UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO211 Sistemas Digitales
AB CD 00 01 11 10
00 0
0 1
01 0
4 5
11 0
12 13
10 0
AB
8 9
CD 00 01
00 0
0 1
01 0
4 5
11 0
12 13
10 0
8 9
0
3
0
7
0
15
0
11
0
3
0
7
0
15
0
11
0
2
0
6
1
14
0
10
11 10
0
2
0
6
1
14
0
10
f(A, B, C, D)=ABC
f(A, B, C, D)=ABCD
Para n = 4:
Un mintrmino se expresa como un producto de 4 variables. Una agrupacin de 2 mintrminos, que forman un 1-cubo (o que son adyacentes), puede expresarse en tres variables. Una agrupacin de 4 mintrminos, que forman un 2-cubo, se expresa en dos variables. Una agrupacin de 23 mintrminos (que forman un 3-cubo), reduce en 3 las variables; es decir, esta agrupacin puede expresarse como una variable. Una agrupacin de los 24 mintrminos (forman un 4-cubo), puede expresarse como 1. Es decir, en 0 variables. Ntese que bajo el mapa suele escribirse la funcin que ste representa. Adems, la lectura de la expresin asociada a un grupo, se efecta por la interseccin de las zonas donde cada variable toma valores iguales a uno.
n 1 n! 2 = 2 = 2n 1 1!( n 1)!
En el ejemplo anterior, se tienen 8 grupos:
A, B, C , D, A , B , C , D
05-09-2012
74
UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO211 Sistemas Digitales
n k
n! 2k k!(n k )!
Con k n Cuando k es igual a n, se logra el nmero de mintrminos. Debido al alto nmero de subcubos, es importante ejercitarse en ubicarlos en el mapa. Los menos obvios son aquellos que se encuentran en los bordes. Ejemplos de estos casos, para n=4:
b d , cb , b d a , ba d 5.4.
Uso de mapas
La obtencin del mapa, a partir de una forma cannica es asunto trivial, si los casilleros han sido rotulados con los nmeros decimales de los mintrminos. obtener el mapa de f(A, B, C) = m(1, 2, 5)
Ejemplo: Se tiene:
AB C 0 1
00
0 1
01 1
2 3
11
6 7
10
4 5
1 f(A, B, C)=(1,2,5)
La obtencin del mapa, a partir de una forma suma de productos puede obtenerse empleando los conceptos desarrollados en manejo de mapas.
05-09-2012
75
UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO211 Sistemas Digitales
Ejemplo.
f(A, B, C) = AC + BC + ABC
Un mintrmino tiene 3 literales; una agrupacin de dos mintrminos tiene una expresin dependiente de dos variables. Para aclarar el mtodo, se dibujar un mapa para cada producto. Con un poco de experiencia, todos los productos pueden dibujarse en el mismo mapa.
AB C 0 1
00
0 1
01
2 3
11
6 7
10
AB
4 5
C 0 1
00
0 1
01 1
2 3
11 1
6 7
10
4 5
f(A, B, C)=A'C
Y para A'BC: Finalmente:
f(A, B, C)=BC'
AB C 0 1
00
0 1
01
2 3
11
6 7
10
AB
4 5
C 0 1
00
0 1
01 1
2 3
11 1
6 7
10
4 5
1 f(A, B, C)=A'BC
f(A, B, C)=A'C+BC'+A'BC
El mapa anterior permite escribir la forma cannica: Ntese que el producto A'BC est incluido en A'C Los mintrminos se marcan slo una vez. Esto por idempotencia, ya que:
f ( A, B, C ) = m(1,2,3,6)
mi + mi = mi
Para demostrar teoremas, y tambin para verificar alguna proposicin del lgebra de Boole. Ejemplo: Demostrar
a +b = ab
En un mapa se tienen:
05-09-2012
76
UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO211 Sistemas Digitales
A B 0 1
0 1
0 1
A
2 3
B 0 1
0
0 2
1 1 1
1 3
f(A,B)=A'B'
f(A,B)=A+B
Negando cualquiera de los mapas se logra demostrar lo pedido. Dadas dos funciones, si se desea probar su equivalencia, la aplicacin de los mapas simplifica largas demostraciones algebraicas. Slo es preciso obtener un mapa para cada una de las funciones, y luego comparar las formas cannicas.
05-09-2012
77