mapas de karnaugh

47
Clase 06: Mapas de Karnaugh Ing. Christian Lezama Cuellar 1

Transcript of mapas de karnaugh

Clase 06:

Mapas de Karnaugh

Ing. Christian Lezama Cuellar

1

MAURICE KARNAUGH

3

Ingeniero de telecomunicaciones estadounidense. Graduado en la universidad de Yale en el 1952, es actualmente gobernador emérito del ICCC (International Council for Computer Communication). Ha trabajado como investigador en los Laboratorios Bell desde 1952 a 1966 y en el centro de investigación de IBM de 1966 a 1993. Así mismo, ha impartido de informática en el Politécnico de Nueva York de 1980 a 1999, y desde 1975 es miembro del IEEE (Institute of Electrical and Electronics Engineers) por sus aportaciones sobre la utilización de métodos numéricos en las telecomunicaciones.Es el creador del método tabular o mapa de Karnaugh.

Tabla o mapa de Karnaugh, Kmap

Procedimiento gráfico para la simplificación de

funciones algebraicas de un número de

variables relativamente pequeño

(en la práctica se puede utilizar para funciones de hasta seis variables).

4

Tabla o mapa de Karnaugh

5

Un diagrama o

mapa de

Karnaugh es una

tabla de verdad

dispuesta de

manera adecuada

para determinar

por inspección la

expresión mínima

de suma de

productos de una

función lógica.

Construcción con 2 variables

6

Mapa K

1

0

1 0 B A

A B Z

0 0 0

0 1 1

1 0 1

1 1 0

0 1

1 0

Construcción con 3 variables

7

A B C Z

0 0 0 1

0 0 1 1

0 1 0 0

0 1 1 0

1 0 0 1

1 0 1 1

1 1 0 0

1 1 1 1

Mapa K

1

0

10 11 01 00 BC A

1 1 0 0

1 1 1 0

Construcción con 4 variables 8

A B C D F

0 0 0 0 1

0 0 0 1 1

0 0 1 0 0

0 0 1 1 1

0 1 0 0 1

0 1 0 1 1

0 1 1 0 0

0 1 1 1 0

1 0 0 0 0

1 0 0 1 1

1 0 1 0 1

1 0 1 1 1

1 1 0 0 0

1 1 0 1 0

1 1 1 0 1

1 1 1 1 0

Mapa K

00 01 11 10

00

01

11

10

1 1 0 1

1 1 0 0

0 1 1 1

0 0 1 0

CD AB

Reglas de simplificación 1. Las agrupaciones son exclusivamente de unos. Esto implica que ningún grupo puede contener ningún cero.

9

1

0

1 0 B A

0

1

INCORRECTO

1

0

1 0 B A

1 1

CORRECTO

Reglas de simplificación 2. Las agrupaciones únicamente pueden hacerse en horizontal y vertical. Esto implica que las diagonales están prohibidas.

10

INCORRECTO

1

0

1 0 B A

0 1

1 0

CORRECTO

1

0

1 0 B A

0 1

1 1

Reglas de simplificación 3. Los grupos han de contener 2n elementos. Es decir que cada grupo tendrá 1,2,4,8... número de unos.

11

CORRECTO

1

0

1 0 B A

1 1

0 0

CORRECTO

1

0

1 0 B A

1 1

1 1

Grupo

de 02 Grupo

de 04

Reglas de simplificación

4. Cada grupo ha de ser tan grande como sea posible. Tal y como lo ilustramos en el ejemplo.

12

1

0

10 11 01 00 BC A

1 1 1 1

0 0 1 1

CORRECTO

1

0

10 11 01 00 BC A

1 1 1 1

0 0 1 1

INCORRECTO

No se a cumplido ninguna

regla pero el resultado no

esta optimizado

Reglas de simplificación

5. Todos los unos tienen que pertenecer como mínimo a un grupo. Aunque pueden pertenecer a más de uno.

13

1

0

10 11 01 00 BC A

0 0 1 1

0 1 0 0

CORRECTO

El 1 se encuentra en al

menos un grupo

Grupo 1

Grupo 2

Reglas de simplificación

6. Pueden existir solapamiento de grupos.

14

1

0

10 11 01 00 BC A

1 1 1 1

0 0 1 1

CORRECTO

1

0

10 11 01 00 BC A

1 1 1 1

0 0 1 1

INCORRECTO

Los grupos se solopan

Los grupos no se

solopan

Reglas de simplificación 7. La formación de grupos también se puede producir con las celdas extremas de la tabla. De tal forma que la parte inferior se podría agrupar con la superior y la izquierda con la derecha tal y como se explica en el ejemplo.

15

1

0

10 11 01 00 BC A

1 0 1 0

1 0 1 0

CORRECTO

Celda Superior

Celda derecha Celda izquierda

Celda inferior

Reglas de simplificación

8. Tiene que resultar el menor número de grupos posibles siempre y cuando no contradiga ninguna de las reglas anteriores. Esto es el número de grupos ha de ser minimal.

16

1

0

10 11 01 00 BC A

1 1 1 1

1 1 1 1

CORRECTO

1

0

10 11 01 00 BC A

1 1 1 1

1 1 1 1

INCORRECTO

No se a cumplido ninguna

regla pero el resultado no

esta optimizado

A

A

B B 1

0

1 0 A B

1

0

1 0 A B

A

A

B B

B B

1

0

10 11 01 00 BA

C

1

0

10 11 01 00 BA

C

1

0

10 11 01 00 BA

C

A A A

C

C

A

11

10

01

00

10 11 01 00 BA DC

10

11

01

00

10 11 01 00 BA DC

10

11

01

00

10 11 01 00 BA DC

10

11

01

00

10 11 01 00 BA DC

A A

B B

A

A

A

A

A

¿Cómo podemos

agrupar dos unos? 1

1

1

0

1 0 A B

1 1

1 1

1

0

10 11 01 00 BA

C

1

1

1 1

10

11

01

00

10 11 01 00 BA

DC

2 variables

3 variables 4 variables

¿Cómo podemos

agrupar cuatro unos?

1 1

1 1

1

0

1 0 A B

1 1 1 1

1

0

10 11 01 00 BA

C

1 1

1 1

1

0

10 11 01 00 BA

C

1 1

1 1

1

0

10 11 01 00 BA

C

1 1

1 1

10

11

01

00

10 11 01 00 BA

DC

1 1

1 1

10

11

01

00

10 11 01 00 BA

DC

1

1

1

1

10

11

01

00

10 11 01 00 BA

DC

1 1

1 1

10

11

01

00

10 11 01 00 BA

DC

2

v

a

r

i

a

b

l

e

s

3 variables

4 variables

¿Cómo podemos

agrupar ocho unos? 1 1 1 1

1

0

10 11 01 00 BA

C

10

11

01

00

10 11 01 00 BA

DC

1 1

1 1

10

11

01

00

10 11 01 00 BA

DC

3 variables

4 variables

1 1 1 1

1 1 1 1

1 1 1 1

1

1

1

1

Dado el mapa K de una determinada función los pasos a seguir son:

1. Enlazar la mayor cantidad de unos de la tabla con la menor cantidad posible de lazos.

2. Indicar en punteado los lazos que tienen todos sus unos compartidos con otros lazos, o sea los implicantes

primos no esenciales.

3. Probar que los implicantes primos cubren todos los “unos” del diagrama con la menor cantidad posible de

lazos

4. Realizar un diagrama para cada solución mínima .

5. Hallar las coordenadas de cada mintérmino y formar el producto correspondiente, desechando las variables

que no intervendrán en el mismo. Tener presente que en general un lazo de dos permitirá eliminar “n”

variables.

¿Cómo simplificar los mintérminos?

1º Se simplifican los mintérminos que son adyacentes y se toman o agrupan de 2, 4, 8,

16...2n . Dos mintérminos son adyacentes cuando difieren en una letra.La suma de dos

mintérminos adyacentes es igual al producto de las variables que tienen en común.

1

1

1

10

11

01

00

10 11 01 00 BA DC

ABCD

+

=1

DCBA

DCBA

CBA(D+D)=CBA

De sumar 2 mintérminos queda CBA

2º Los mintérminos que no son adyacentes no se pueden simplificar (A, B, C, D) 3º Si tomo dos mintérminos se elimina una variable, si tomo cuatro se eliminan dos variables

1 1

1 1

1

0

10 11 01 00 BA

C ABC + + + ABC ABC ABC =

= (A+A)BC + BC(A+A) = B(C+C) = B

1 1 1 1

1 1

1 1

1 1

10

11

01

00

10 11 01 00 BA

DC

1 1 1 1

1 1

1 1

1 1

10

11

01

00

10 11 01 00 BA

DC

Una misma función puede tener dos o

más soluciones

Lazos redundantes Algunas veces aunque se tenga

en cuenta todos los lazos

mayores posibles, un

subconjunto de ellos puede

cubrir todos los “unos” de esa

función, en estos casos existe un

lazo redundante que viola el

principio de que los “unos”

queden enlazados con el menor

número de lazos posibles.

1 1

1 1

1 1

1 1

CBAABDCBADBADCZ

10

11

01

00

10 11 01 00 BA

DC

Esta suma de productos no es mínima,

dado que si bien se han tenido en cuenta

los mayores lazos posibles, en este caso

con un subconjunto. El lazo dibujado en

línea punteada que corresponde al

producto CD es redundante, pues agrega

un sumando innecesario 10

11

01

00

10 11 01 00 BA

DC

1 1

1 1

1 1

1 1

CBAABDCBADBAZ

Cuando una variable de salida no se puede definir

con un cero o con un uno en la tabla de verdad se

coloca una “x” que significa redundancia o “no

preocuparse”

Esto sucede cuando no nos interesa la función de

salida o cuando se trata de estados prohibidos que

no forman parte de algún código.

La redundancia se puede usar como un comodín, se

puede tomar como uno o cero individualmente

Ejemplo: realizar un circuito que (a la salida) encienda una

lámpara cuando en su entrada viene el código del 3 y el

código es el BCD natural

X 1 1 1 1

X 0 1 1 1

X 1 0 1 1

X 0 0 1 1

X 1 1 0 1

X 0 1 0 1

0 1 0 0 1

0 0 0 0 1

0 1 1 1 0

0 0 1 1 0

0 1 0 1 0

0 0 0 1 0

1 1 1 0 0

0 0 1 0 0

0 1 0 0 0

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0 0 0 0 0 0

N° Z A B C D

Estados prohibidos

del BCD Natural

BCD

Natural

(0-15)

3

x x 0 0

x x x x

0 0 0 0

0 1 0 0

10

11

01

00

10 11 01 00 BA

DC

A

B

C

Z

Z = ABC Z = ABCD

2- Fijar los 1 de las expresiones

z= A’B’C + A’BC

z=A’B’C’D’ + A’B’C’D+A’B’CD+A’B’CD’

+AB’C’D’+AB’CD+AB’CD’

3 – Simplificación (1)

Z= AB’+AB=A Z=A’B + AB = B

Z=A’B’+A’B = A’ Z=A’B’+AB’= B’

3- Simplificación(2)

• Para tres Variables.

Z= A’B’C’ + AB’C’ + ABC + ABC’

Z= (A’+A)B’C ‘+ AB(C+C’)

Z=B’C’ + AB

3- Simplificación(3)

Z=A’B’C’+A’BC’ = A’C’ Z= AB’C’ + ABC’ = AC’

3 – Variables Casos

Cuando una variable aparece en forma complementada (X’) y no complementada (X) dentro de un agrupamiento, esa variable se

elimina de la expresión. Las variables que son iguales en todos agrupamientos deben aparecer

al final de la expresión.

Conclusión

4 Variables Caso 1

4 Variables Bloques

4 Variables Casos Varios

Alternativas ?

4 Variables Casos Varios(2)

Condición No Importa

C' C

A'B' 0 0

A'B 0 X

AB 1 1

AB' X 1

C' C

A'B' 0 0

A'B 0 0

AB 1 1

AB' 1 1

A B C Z

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 X

1 0 0 X

1 0 1 1

1 1 0 1

1 1 1 1

Z=A

Resumen

1.- Dibujar la cuadrícula correspondiente al número de variables de la función

2.- Sombrear la zona correspondiente a la función (1) 3.- Recubrir dicha zona con bloques que sean lo mayores

posible 4.- Si se puede quitar algún bloque de forma que la zona

cubierta siga siendo la misma 5.- La expresión simplificada de f se corresponde a la suma

de los monomios correspondientes a los bloques que queden

Ejemplos Mapas de Karnaugh

Ejemplo 1

Diseñar un circuito lógico combinatorio que detecte, mediante UNOS, los números pares para una combinación de 3 variables de entrada.

DEC A B C Z

0

1

2

3

4

5

6

7

0

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

0

0

1

0

1

0

1

0

Función canónica

Ejemplo 1 Solución

C'(A + B)

A 0 0 0 1 1 1 1 0

0 0 0 0 1

1 1 0 0 1

BC

BC' AC'

AB'C' + A'BC' + ABC'

Ejemplo 2- Circuito Velocímetro

• Se tienen 3 Códigos del ABC • Las lámparas deben incrementarse de dos niveles en

dos. • L1 ON 001 • L1 & L2 001 y 010 etc

• Los codigo 110 y 111 no responde.

Solución: Tabla de Verdad

ABC L1 L2 L3 L4 L5

000 0 0 0 0 0

001 1 0 0 0 0

010 1 1 0 0 0

011 1 1 1 0 0

100 1 1 1 1 0

101 1 1 1 1 1

110 X X X X X

111 X X X X X

45

Solución

Solución: Diseño de Circuito