Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Metodo de karnaugh, Resúmenes de Gestión del Conocimiento

Diagrama de karnaugh

Tipo: Resúmenes

2014/2015

Subido el 07/07/2015

victor_dza
victor_dza 🇪🇸

1 documento

1 / 8

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
1
MÉTODO DE KARNAUGH
Jesús Pizarro Peláez
MÉTODO DE KARNAUGH.............................................................................................1
1. I
NTRODUCCIÓN
.......................................................................................................1
2. M
ÉTODO DE
K
ARNAUGH
..........................................................................................2
3. E
JEMPLO DE APLICACIÓN
(I).....................................................................................4
4. E
STADOS
N
O
I
MPORTA EN LAS FUNCIONES LÓGICAS
..................................................6
5. E
JEMPLO DE APLICACIÓN
(II)....................................................................................7
1. I
NTRODUCCIÓN
En ocasiones, el método algebraico para simplificar funciones lógicas aplicando los teoremas del álgebra de
Boole, puede no ser el mejor medio por varias razones:
o Cuando aumenta el número de variables o de términos resulta difícil ver la forma de reducir la
expresión.
o Se trabaja con grandes cantidades de expresiones muy similares
...······ dcbadcba +
por lo que la
probabilidad de equivocarse en algún paso es muy elevada (y aunque no nos equivoquemos, siempre
resulta farragoso).
o Podemos llegar a una expresión que no es la óptima, con el consiguiente incremento en puertas y
complejidad del circuito final.
Existe un método gráfico para simplificación de funciones que resuelve todos estos problemas: El método de
Karnaugh. Con este método la simplificación adquiere las siguientes ventajas con respecto al método algebraico:
o Para funciones de tres y cuatro variables se aplica de forma muy sencilla. Para cinco variables puede
resultar algo más difícil, y para más… existen otros métodos.
o No se escriben las expresiones de los productos de las variables, se trabaja directamente sobre un
diagrama, por lo que se gana considerablemente en claridad.
o Con un poco de soltura (adquirida mediante un poco de práctica), resulta muy sencillo hallar siempre
la expresión más óptima de la función.
Es por todos estos motivos que el método de Karnaugh sea ampliamente utilizado para sistemas de tres y cuatro
variables. A todo esto hay que añadir otra gran ventaja: Es un método muy sencillo de aprender, como vamos a ver a
continuación.
pf3
pf4
pf5
pf8

Vista previa parcial del texto

¡Descarga Metodo de karnaugh y más Resúmenes en PDF de Gestión del Conocimiento solo en Docsity!

MÉTODO DE KARNAUGH

Jesús Pizarro Peláez

MÉTODO DE KARNAUGH............................................................................................. 1

1. INTRODUCCIÓN ....................................................................................................... 1

2. MÉTODO DE KARNAUGH .......................................................................................... 2

3. EJEMPLO DE APLICACIÓN (I) ..................................................................................... 4

4. ESTADOS NO IMPORTA EN LAS FUNCIONES LÓGICAS .................................................. 6

5. EJEMPLO DE APLICACIÓN (II) .................................................................................... 7

1. INTRODUCCIÓN

En ocasiones, el método algebraico para simplificar funciones lógicas aplicando los teoremas del álgebra de

Boole, puede no ser el mejor medio por varias razones:

o Cuando aumenta el número de variables o de términos resulta difícil ver la forma de reducir la expresión. o Se trabaja con grandes cantidades de expresiones muy similares a · b · c · d + a · b · c · d ...por lo que la probabilidad de equivocarse en algún paso es muy elevada (y aunque no nos equivoquemos, siempre resulta farragoso). o Podemos llegar a una expresión que no es la óptima, con el consiguiente incremento en puertas y complejidad del circuito final.

Existe un método gráfico para simplificación de funciones que resuelve todos estos problemas: El método de

Karnaugh. Con este método la simplificación adquiere las siguientes ventajas con respecto al método algebraico:

o Para funciones de tres y cuatro variables se aplica de forma muy sencilla. Para cinco variables puede resultar algo más difícil, y para más… existen otros métodos. o No se escriben las expresiones de los productos de las variables, se trabaja directamente sobre un diagrama, por lo que se gana considerablemente en claridad. o Con un poco de soltura (adquirida mediante un poco de práctica), resulta muy sencillo hallar siempre la expresión más óptima de la función.

Es por todos estos motivos que el método de Karnaugh sea ampliamente utilizado para sistemas de tres y cuatro

variables. A todo esto hay que añadir otra gran ventaja: Es un método muy sencillo de aprender, como vamos a ver a

continuación.

2. MÉTODO DE KARNAUGH

El método de Karnaugh es un método gráfico. Se usan unas tablas llamadas tablas o diagramas de Karnaugh.

Dichas tablas tienen una casilla por cada combinación de variables de la función, de forma que para 3 variables

tendremos 2^3 = 8 casillas, para cuatro variables tendremos 2^4 = 16 casillas.

ba dc 00 01 11 10 00 01 11 10

ba c 00 01 11 10 0 1

Diagrama de Karnaugh para 4 variables Diagrama de Karnaugh para 3 variables

Nótese que el orden de las combinaciones no es binario natural si no que es código Gray (00, 01, 11, 10) esto es

debido a que el funcionamiento del método se basa en combinaciones adyacentes.

Una vez dibujado el diagrama, se trasladan a éste las combinaciones de la tabla de la verdad poniendo un 1 en la

casilla correspondiente. Ejemplo: sea la función f = a · b · c + a · b · c + a · b · c que como se ve, vale 1 para las

combinaciones { c , b , a } ={ 1 , 0 , 0 }, { 0 , 0 , 1 }, { 1 , 0 , 1 }. Pues en el diagrama de Karnaugh pondríamos un 1 en cada una

de esas casillas.

Ahora es cuando vamos a simplificar. A partir de las posiciones de los unos en la tabla, intentamos formar

grupos de unos lo más grandes posibles. Dichos grupos de unos:

  • Deberán estar constituidos por un numero de unos que sea potencia de dos (no valen 3 ni 6 ni 7…).
  • Deberán ser un conjunto convexo (o sea, no tener esquinas hacia dentro).
  • No podrán ir en diagonal.
  • Intentaremos formar el menor número de grupos y éstos deberán ser lo más grandes posible.
  • Un uno puede formar parte de tantos grupos como haga falta.

En los grupos que formemos se eliminan las variables que estén presentes en el cero y en el uno. En nuestro

diagrama anterior, vemos que podemos hacer dos grupos de dos variables: uno con las casillas

ba c^00 01 (^0 ) 1 1 1

Casillas donde f = 1

3. EJEMPLO DE APLICACIÓN (I)

Vamos a resolver un problema de lógica combinacional aplicando el método de Karnaugh para obtener la

función simplificada.

Como ya se sabe, la división entera de un número tiene dos partes: cociente y resto, ambos enteros. Nuestro

circuito hará la división de un número BCD (o sea, del 0 al 9) entre 3. El cociente más grande será el obtenido al

dividir el número más grande, que en BCD es el 9. Como 9:3 = 3 necesitamos 2 bits para representar este número

por lo que nuestro circuito deberá tener dos salidas. Una para el bit de más peso y otra para el de menos peso. A

continuación se muestra la salida del circuito y la tabla de verdad.

Número resultado 0 0 1 0 2 0 3 1 4 1 5 1 6 2 7 2 8 2 9 3

D C B A b1 b 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 1 0 1 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 1 0 0 1 1 1 1 0 1 0 0 0 1 0

1 0 0 1 1 1

División entre 3 de los números del 0 al 9 Tabla de verdad del circuito

Nos van a quedar dos funciones de 4 variables cada una, lo cual es mucho para poder simplificar por el método

algebraico, por lo que usaremos el método de Karnaugh. Usaremos dos diagramas de Karnaugh; uno para la variable

b1 y otro para b.

b

ba dc 00 01 11 10 00 01 11 10 b

ba dc 00 01 11 10 00 01 11 10

Problema Diseñar un circuito combinacional que realice la división entre 3 (entera) de un número codificado en BCD.

En primer lugar rellenamos los diagramas con unos en los lugares donde corresponda. b1 en las posiciones

{ ( 0 , 1 , 1 , 0 ), ( 0 , 1 , 1 , 1 ), ( 1 , 0 , 0 , 0 ), ( 1 , 0 , 0 , 1 )}y b0 en las posiciones {( 0 , 0 , 1 , 1 ), ( 0 , 1 , 0. 0 ), ( 0 , 1 , 0 , 1 ), ( 1 , 0 , 0 , 1 )}

Ahora buscamos grupos de unos lo más grandes posible. Vemos que para b1 tendremos dos grupos de dos unos:

uno formado por {( 0 , 1 , 1 , 1 ), ( 0 , 1 , 1 , 0 )}y otro por {( 1 , 0 , 0 , 0 ), ( 1 , 0 , 0 , 1 )}. Mientras que para b0 tendremos un grupo

de dos unos formado por {( 0 , 1 , 0. 0 ), ( 0 , 1 , 0 , 1 )}y dos grupos de un solo uno correspondientes a las combinaciones

{ ( 0 , 0 , 1 , 1 )}y {( 1 , 0 , 0 , 1 )}.

A partir de estos diagramas obtenemos directamente las ecuaciones del circuito. Para b1 tendremos dos

términos: en el primer grupo (el de arriba) cambia la a , mientras que dcb = 011 por lo que nos queda d · c · b. En el

grupo de abajo cambia la a también, por lo que nos queda d · c · b. Para b0 operamos de la misma forma.

Observemos que vamos a tener tres términos, dos de los cuales tendrán todas las variables. Cuanto menores sean los

grupos, menos variables desaparecen y por tanto más variables aparecerán en la expresión final.

Las ecuaciones de nuestro circuito serán:

b 1 = d · c · b + d · c · b b 0 = d · c · b · a + d · c · b · a + d · c · b

A partir de estas ecuaciones ya podemos implementar nuestro circuito. Nótese que mediante el método de

Karnaugh lo que obtenemos es la expresión mínima de la función expresada en forma de suma de productos. Esto no

quiere decir que la función no se pueda simplificar más. En ocasiones podremos, pero ya no será una expresión en

forma de suma de productos. En este caso, podríamos encontrar una expresión más simple para b0 :

b 0 = d · c · b · a + d · c · b · a + d · c · b = a · c ·( d · b + d · b )+ d · c · b = a · c ·( bd )+ d · c · b

b

ba dc 00 01 11 10 00 (^01 1 ) 11 (^10 1 ) b

ba dc 00 01 11 10 (^00 ) (^01 1 ) 11 (^10 )

b

ba dc 00 01 11 10 00 (^01 1 ) 11 (^10 1 ) b

ba dc 00 01 11 10 (^00 ) (^01 1 ) 11 (^10 )

C B A b1 b 0 0 0 0 0 0 0 1 0 1 0 1 0 X X 0 1 1 1 0 1 0 0 X X 1 0 1 X X 1 1 0 X X 1 1 1 1 1

b

ba c 00 01 11 10 (^0 1) X (^1) X X 1 X

b

ba c 00 01 11 10 (^0 1) X (^1) X X 1 X

Tabla de Verdad Diagramas de Karnaugh

No es necesario continuar con el problema para darnos cuenta que hemos conseguido reducir considerablemente

el número de funciones lógicas necesarias. Siempre que podamos, deberemos observar si en nuestro circuito van a

aparecer estados no importa, ya que usarlos supondrá un ahorro considerable de puertas lógicas en la mayoría de los

casos.

5. EJEMPLO DE APLICACIÓN (II)

Para ver la importancia de aplicar los estados no importa al diseño de sistemas digitales, vamos a resolver de

nuevo el problema del apartado 3 aplicando los que hemos aprendido acerca de los no importa.

Esta era la tabla de verdad que obtuvimos anteriormente:

Número resultado 0 0 1 0 2 0 3 1 4 1 5 1 6 2 7 2 8 2 9 3

D C B A b1 b 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 1 0 1 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 1 0 0 1 1 1 1 0 1 0 0 0 1 0

1 0 0 1 1 1

División entre 3 de los números del 0 al 9 Tabla de verdad del circuito

Problema Diseñar un circuito combinacional que realice la división entera de un número codificado en BCD entre 3.

Si nos fijamos, vemos que la tabla de verdad no está completa. Para 4 bits hay 16 combinaciones de entrada y

nosotros solo hemos puesto 10. ¿Por qué? Porque en BCD no se usan las combinaciones superiores, aquellas

correspondientes a los números decimales 10, 11,… 15.

Pero nosotros, sin darnos cuenta, si que las hemos usado, las hemos asignado el valor 0 como se ve en los

diagramas de Karnaugh:

Deberíamos incluir en nuestros diagramas de Karnaugh dicha combinaciones como x , en lugar de como 0:

Ahora, para realizar los grupos usaremos las x que acabamos de añadir como 1 o como 0 lógico en función de lo

que más nos convenga para conseguir el menor número de grupos, o bien que éstos sean lo más grandes posible:

b

ba dc 00 01 11 10 00 (^01 1 ) (^11) X X X X (^10 1 1) X X b

ba dc 00 01 11 10 (^00 ) (^01 1 ) (^11) X X X X (^10 1) X X

En esta ocasión nos queda:

b 1 = d + c · b b 0 = c · b + d · a + c · b · a

Que como vemos son expresiones bastante menos complejas que las obtenidas en el apartado 3… y además el

circuito se va a comportar exactamente de la misma manera.

b

ba dc 00 01 11 10 00 (^01 1 ) 11 (^10 1 ) b

ba dc 00 01 11 10 (^00 ) (^01 1 ) 11 (^10 )

b

ba dc 00 01 11 10 00 (^01 1 ) (^11) X X X X (^10 1 1) X X b

ba dc 00 01 11 10 (^00 ) (^01 1 ) (^11) X X X X (^10 1) X X