SlideShare una empresa de Scribd logo
1 de 8
Descargar para leer sin conexión
1
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 ...······ 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.
2
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 23
= 8 casillas, para cuatro variables tendremos 24
= 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 cbacbacbaf ······ ++= que como se ve, vale 1 para las
combinaciones { } { }{ }{ }1,0,1,1,0,0,0,0,1,, =abc . 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 10
0 1
1 1 1
Casillas donde f = 1
3
{ } { }{ }1,0,1,0,0,1,, =abc y otro con { } { }{ }1,0,1,1,0,0,, =abc Vemos que en el primer grupo la variable a
aparece con 1 y con 0, por lo que la eliminamos, quedándonos c=1 y b=0 por lo que el término nos queda cb· . En
el segundo grupo aparece la c negada y sin negar, por lo que la eliminamos, quedándonos b=0 y a=1 por lo que el
término nos queda ab· . Por lo que la función simplificada queda: )·(··· cababbcf +=+= .
A continuación se ponen unos cuantos ejemplos de grupos posibles para un diagrama de cuatro variables.
ba
dc 00 01 11 10
00
01 1
11
10
ba
dc 00 01 11 10
00
01 1 1
11 1 1
10
ba
dc 00 01 11 10
00 1 1 1 1
01 1 1 1 1
11
10
ba
dc 00 01 11 10
00 1 1
01 1 1
11 1 1
10 1 1
No cambia ninguno, por
lo que abcdf ···=
Cambian b y d, por lo
que queda caf ·=
Cambian a, b y c, por lo
que queda df =
Cambian a, c y d, por lo
que queda bf =
ba
dc 00 01 11 10
00
01
11
10 1 1
ba
dc 00 01 11 10
00
01 1
11 1
10
ba
dc 00 01 11 10
00 1 1 1 1
01
11
10
ba
dc 00 01 11 10
00 1
01 1
11 1
10 1
Cambia a, por lo que
queda bcdf ··=
Cambia d, por lo que
queda abcf ··=
Cambian a y b, por lo
que queda cdf ·=
Cambian d y c, por lo
que queda abf ·=
ba
dc 00 01 11 10
00
01
11 1 1
10
ba
dc 00 01 11 10
00 1 1
01
11
10 1 1
ba
dc 00 01 11 10
00 1 1
01
11
10 1 1
ba
dc 00 01 11 10
00 1 1
01 1 1
11 1 1
10 1 1
Cambia b, por lo que
queda acdf ··=
Cambian d y b, por lo
que queda acf ·=
Cambian d y b, por lo
que queda acf ·=
Cambian b, c y d, por lo
que queda af =
Observemos que los cuatro últimos ejemplos no parecen cumplir con lo que dijimos acerca de los grupos, que
debían ser un conjunto convexo. En realidad si que lo son. Debemos ver los diagramas de Karnaugh como una
superficie continua, algo así como una caja de cartón desmontada que cuando se monta se cierra y se unen los lados.
Se pueden coger estos grupos siempre que queramos, sin más condición que ser potencia de 2 y no ir en diagonal.
4
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 b0
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 b0.
b1
ba
dc 00 01 11 10
00
01
11
10
b0
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.
5
En primer lugar rellenamos los diagramas con unos en los lugares donde corresponda. b1 en las posiciones
( ) ( ) ( ) ( ){ }1,0,0,1,0,0,0,1,1,1,1,0,0,1,1,0 y b0 en las posiciones ( ) ( ) ( ) ( ){ }1,0,0,1,1,0,1,0,0.0,1,0,1,1,0,0
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,0,1,1,1,0 y otro por ( ) ( ){ }1,0,0,1,0,0,0,1 . Mientras que para b0 tendremos un grupo
de dos unos formado por ( ) ( ){ }1,0,1,0,0.0,1,0 y dos grupos de un solo uno correspondientes a las combinaciones
( ){ }1,1,0,0 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 bcd ·· . En el
grupo de abajo cambia la a también, por lo que nos queda bcd ·· . 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:
bcdbcdb ····1 += bcdabcdabcdb ········0 ++=
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:
bcddbcabcdbdbdcabcdabcdabcdb ··)·(···)···(·········0 +⊕=++=++=
b1
ba
dc 00 01 11 10
00
01 1 1
11
10 1 1
b0
ba
dc 00 01 11 10
00 1
01 1 1
11
10 1
b1
ba
dc 00 01 11 10
00
01 1 1
11
10 1 1
b0
ba
dc 00 01 11 10
00 1
01 1 1
11
10 1
6
4. ESTADOS NO IMPORTA EN LAS FUNCIONES LÓGICAS
En ocasiones, podemos encontrar combinaciones de entrada para las que no existe definida una salida. No
estamos hablando de que sea 1 o 0, nos referimos a que simplemente, no se va a dar dicha combinación a la entrada,
o si se da, carece de sentido.
Para entender esto mejor pongamos un ejemplo: Sea un tanque de agua con tres sensores (boyas) que indican el
nivel del agua. Si se activa el sensor 1 (combinación 001), significa que el agua llega a ese nivel. Si el agua sube, se
activará también el segundo sensor (combinación 011), y así sucesivamente. De forma que la combinación 000
corresponde al tanque vacío, 111 al tanque lleno, etc.
Pero ¿qué pasa con la combinación 110, por ejemplo? ¿Qué quiere decir esta combinación? Pues lo que quiere
decir, es que el agua ha activado los sensores 2 y 3, pero no el sensor 1. Por lo que sabemos de física esto es
imposible, ya que el agua no flota en el aire, por lo que es imposible que se activen los sensores 2 y 3 si antes no se
ha activado el sensor 1. Esta combinación de entrada nunca se va a dar en nuestro sistema. Hay más combinaciones
que nunca se van a dar como la 100, 101… ¿Qué hacemos con estas combinaciones a la hora de diseñar nuestro
circuito?
Como son combinaciones que no se van a dar, la función para estos valores no estará definida. Esto quiere decir
que la salida para esa combinación de entrada puede ser cualquier cosa, 1 o 0. Nos da igual que tome un valor u otro,
ya que, repetimos: Esa combinación de entrada no se va dar.
A estas combinaciones imposible se las denomina “estados no importa” y se representan en la tabla de verdad
como una x. Al valor x le podemos asignar el valor lógico 0 o 1 según nos convenga uno u otro.
Se representan a continuación la tabla de verdad y los diagramas de Karnaugh de este sistema. La entrada son
los tres sensores y la salida el valor binario del nivel del agua entre 0 y 3 (dos bits). Obsérvese como para las
combinaciones imposibles (010, 100, 101 y 110) se ha puesto a la salida el estado lógico “no importa” representado
por una x. Al trasladar nuestra tabla de la verdad a los diagramas de Karnaugh trasladamos los unos y las x a las
casillas que corresponda.
Ahora hacemos los grupos teniendo en cuenta que podemos usar las x como queramos, o sea, hacer que sean un
1 lógico si con ello conseguimos reducir el número de grupos o hacer los grupos mayores.
3
2
1
7
C B A b1 b0
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
b1
ba
c 00 01 11 10
0 1 X
1 X X 1 X
b0
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 b0
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.
8
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:
b1
ba
dc 00 01 11 10
00
01 1 1
11 X X X X
10 1 1 X X
b0
ba
dc 00 01 11 10
00 1
01 1 1
11 X X X X
10 1 X X
En esta ocasión nos queda:
bcdb ·1 += abcadbcb ····0 ++=
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.
b1
ba
dc 00 01 11 10
00
01 1 1
11
10 1 1
b0
ba
dc 00 01 11 10
00 1
01 1 1
11
10 1
b1
ba
dc 00 01 11 10
00
01 1 1
11 X X X X
10 1 1 X X
b0
ba
dc 00 01 11 10
00 1
01 1 1
11 X X X X
10 1 X X

Más contenido relacionado

La actualidad más candente

Analisis matematico y algebra lineal (Matematicas 2º Bach, ccss)
Analisis matematico y algebra lineal (Matematicas 2º Bach, ccss)Analisis matematico y algebra lineal (Matematicas 2º Bach, ccss)
Analisis matematico y algebra lineal (Matematicas 2º Bach, ccss)Juan Cervera Añón
 
9. giro de los ejes
9. giro de los ejes9. giro de los ejes
9. giro de los ejesSALINAS
 
Problemas, lenguaje de programación
Problemas, lenguaje de programaciónProblemas, lenguaje de programación
Problemas, lenguaje de programaciónJUDITH506845
 
resistencia de materiales
resistencia de materialesresistencia de materiales
resistencia de materialesruli ordoñez
 
Folleto matematica basica
Folleto matematica basicaFolleto matematica basica
Folleto matematica basicassotoc11
 
Estatica ejercicios resueltos 2
Estatica   ejercicios resueltos 2Estatica   ejercicios resueltos 2
Estatica ejercicios resueltos 2Wilson Castilla
 

La actualidad más candente (10)

Analisis matematico y algebra lineal (Matematicas 2º Bach, ccss)
Analisis matematico y algebra lineal (Matematicas 2º Bach, ccss)Analisis matematico y algebra lineal (Matematicas 2º Bach, ccss)
Analisis matematico y algebra lineal (Matematicas 2º Bach, ccss)
 
Mate grado 8°
Mate grado 8°Mate grado 8°
Mate grado 8°
 
9. giro de los ejes
9. giro de los ejes9. giro de los ejes
9. giro de los ejes
 
Problemas, lenguaje de programación
Problemas, lenguaje de programaciónProblemas, lenguaje de programación
Problemas, lenguaje de programación
 
En mec
En mecEn mec
En mec
 
resistencia de materiales
resistencia de materialesresistencia de materiales
resistencia de materiales
 
Folleto matematica basica
Folleto matematica basicaFolleto matematica basica
Folleto matematica basica
 
Hardy cross
Hardy crossHardy cross
Hardy cross
 
Estatica ejercicios resueltos 2
Estatica   ejercicios resueltos 2Estatica   ejercicios resueltos 2
Estatica ejercicios resueltos 2
 
Problemas2324
Problemas2324Problemas2324
Problemas2324
 

Similar a Electrónica digital: Método de Karnaugh

Similar a Electrónica digital: Método de Karnaugh (20)

Cap 6 ecuaciones
Cap 6 ecuacionesCap 6 ecuaciones
Cap 6 ecuaciones
 
N cap 6 ecuaciones
N cap 6 ecuacionesN cap 6 ecuaciones
N cap 6 ecuaciones
 
100 problemas maravillosos de matemáticas - Libro 6
100 problemas maravillosos de matemáticas - Libro 6100 problemas maravillosos de matemáticas - Libro 6
100 problemas maravillosos de matemáticas - Libro 6
 
mapa de karnaugh
mapa de karnaughmapa de karnaugh
mapa de karnaugh
 
karnaugh.pdf
karnaugh.pdfkarnaugh.pdf
karnaugh.pdf
 
Mapas k
Mapas kMapas k
Mapas k
 
Ejercicios (1)
Ejercicios (1)Ejercicios (1)
Ejercicios (1)
 
100 problemas maravillosos de matemáticas - Libro 5
100 problemas maravillosos de matemáticas - Libro 5100 problemas maravillosos de matemáticas - Libro 5
100 problemas maravillosos de matemáticas - Libro 5
 
Matematica trayecto inicial
Matematica trayecto inicialMatematica trayecto inicial
Matematica trayecto inicial
 
Actividad 8
Actividad 8Actividad 8
Actividad 8
 
Mapas de karnaugh
Mapas de karnaughMapas de karnaugh
Mapas de karnaugh
 
digital
digitaldigital
digital
 
Digitpro
DigitproDigitpro
Digitpro
 
Digitpro
DigitproDigitpro
Digitpro
 
Algebra 1paginaweb
Algebra 1paginawebAlgebra 1paginaweb
Algebra 1paginaweb
 
Algebraunidad1
Algebraunidad1 Algebraunidad1
Algebraunidad1
 
Guía práctica de algebra
Guía práctica de algebraGuía práctica de algebra
Guía práctica de algebra
 
Ejercicios detallados del obj 11 mat i (176)
Ejercicios detallados del obj 11 mat i (176)Ejercicios detallados del obj 11 mat i (176)
Ejercicios detallados del obj 11 mat i (176)
 
Circuitos digitales-problemas
Circuitos digitales-problemasCircuitos digitales-problemas
Circuitos digitales-problemas
 
Problemas mn
Problemas mnProblemas mn
Problemas mn
 

Más de SANTIAGO PABLO ALBERTO

Manual de teoría y practica electroneumática avanzada
Manual de teoría y practica electroneumática avanzadaManual de teoría y practica electroneumática avanzada
Manual de teoría y practica electroneumática avanzadaSANTIAGO PABLO ALBERTO
 
Programacion de PLC basado en Rslogix 500 por Roni Domínguez
Programacion de PLC basado en Rslogix 500 por Roni Domínguez Programacion de PLC basado en Rslogix 500 por Roni Domínguez
Programacion de PLC basado en Rslogix 500 por Roni Domínguez SANTIAGO PABLO ALBERTO
 
Programación de microcontroladores PIC en C con Fabio Pereira
Programación de microcontroladores PIC en  C con Fabio PereiraProgramación de microcontroladores PIC en  C con Fabio Pereira
Programación de microcontroladores PIC en C con Fabio PereiraSANTIAGO PABLO ALBERTO
 
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...SANTIAGO PABLO ALBERTO
 
Programación de autómatas PLC OMRON CJ/CP1
Programación de  autómatas PLC OMRON CJ/CP1Programación de  autómatas PLC OMRON CJ/CP1
Programación de autómatas PLC OMRON CJ/CP1SANTIAGO PABLO ALBERTO
 
Manual del sistema del controlador programable S7-200 SMART
Manual del sistema del controlador programable S7-200 SMARTManual del sistema del controlador programable S7-200 SMART
Manual del sistema del controlador programable S7-200 SMARTSANTIAGO PABLO ALBERTO
 
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...SANTIAGO PABLO ALBERTO
 
PLC y Electroneumática: Electricidad y Automatismo eléctrico por Luis Miguel...
PLC y Electroneumática: Electricidad y Automatismo eléctrico por  Luis Miguel...PLC y Electroneumática: Electricidad y Automatismo eléctrico por  Luis Miguel...
PLC y Electroneumática: Electricidad y Automatismo eléctrico por Luis Miguel...SANTIAGO PABLO ALBERTO
 
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...SANTIAGO PABLO ALBERTO
 
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...SANTIAGO PABLO ALBERTO
 
Electrónica digital: Introducción a la Lógica Digital - Teoría, Problemas y ...
Electrónica digital:  Introducción a la Lógica Digital - Teoría, Problemas y ...Electrónica digital:  Introducción a la Lógica Digital - Teoría, Problemas y ...
Electrónica digital: Introducción a la Lógica Digital - Teoría, Problemas y ...SANTIAGO PABLO ALBERTO
 

Más de SANTIAGO PABLO ALBERTO (20)

secuencia electroneumática parte 1
secuencia electroneumática parte 1secuencia electroneumática parte 1
secuencia electroneumática parte 1
 
secuencia electroneumática parte 2
secuencia electroneumática parte 2secuencia electroneumática parte 2
secuencia electroneumática parte 2
 
Manual de teoría y practica electroneumática avanzada
Manual de teoría y practica electroneumática avanzadaManual de teoría y practica electroneumática avanzada
Manual de teoría y practica electroneumática avanzada
 
Programacion de PLC basado en Rslogix 500 por Roni Domínguez
Programacion de PLC basado en Rslogix 500 por Roni Domínguez Programacion de PLC basado en Rslogix 500 por Roni Domínguez
Programacion de PLC basado en Rslogix 500 por Roni Domínguez
 
Programación de microcontroladores PIC en C con Fabio Pereira
Programación de microcontroladores PIC en  C con Fabio PereiraProgramación de microcontroladores PIC en  C con Fabio Pereira
Programación de microcontroladores PIC en C con Fabio Pereira
 
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
 
Arduino: Arduino de cero a experto
Arduino: Arduino de cero a expertoArduino: Arduino de cero a experto
Arduino: Arduino de cero a experto
 
Fisica I
Fisica IFisica I
Fisica I
 
Quimica.pdf
Quimica.pdfQuimica.pdf
Quimica.pdf
 
Manual básico PLC OMRON
Manual básico PLC OMRON Manual básico PLC OMRON
Manual básico PLC OMRON
 
Programación de autómatas PLC OMRON CJ/CP1
Programación de  autómatas PLC OMRON CJ/CP1Programación de  autómatas PLC OMRON CJ/CP1
Programación de autómatas PLC OMRON CJ/CP1
 
Manual del sistema del controlador programable S7-200 SMART
Manual del sistema del controlador programable S7-200 SMARTManual del sistema del controlador programable S7-200 SMART
Manual del sistema del controlador programable S7-200 SMART
 
Catálogo de PLC S7-200 SMART
Catálogo de PLC S7-200 SMART Catálogo de PLC S7-200 SMART
Catálogo de PLC S7-200 SMART
 
PLC: Automatismos industriales
PLC: Automatismos industrialesPLC: Automatismos industriales
PLC: Automatismos industriales
 
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
 
PLC y Electroneumática: Electricidad y Automatismo eléctrico por Luis Miguel...
PLC y Electroneumática: Electricidad y Automatismo eléctrico por  Luis Miguel...PLC y Electroneumática: Electricidad y Automatismo eléctrico por  Luis Miguel...
PLC y Electroneumática: Electricidad y Automatismo eléctrico por Luis Miguel...
 
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
 
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
 
PLC: Motor Dahlander
PLC: Motor DahlanderPLC: Motor Dahlander
PLC: Motor Dahlander
 
Electrónica digital: Introducción a la Lógica Digital - Teoría, Problemas y ...
Electrónica digital:  Introducción a la Lógica Digital - Teoría, Problemas y ...Electrónica digital:  Introducción a la Lógica Digital - Teoría, Problemas y ...
Electrónica digital: Introducción a la Lógica Digital - Teoría, Problemas y ...
 

Último

Edificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRCEdificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRCANDECE
 
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023ANDECE
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
PRESENTACION DE CLASE. Factor de potencia
PRESENTACION DE CLASE. Factor de potenciaPRESENTACION DE CLASE. Factor de potencia
PRESENTACION DE CLASE. Factor de potenciazacariasd49
 
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIACOMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIARafaelPaco2
 
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdfLEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdfAdelaHerrera9
 
Tiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IITiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IILauraFernandaValdovi
 
Cadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operacionesCadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operacionesal21510263
 
Fisiología del Potasio en Plantas p .pdf
Fisiología del Potasio en Plantas p .pdfFisiología del Potasio en Plantas p .pdf
Fisiología del Potasio en Plantas p .pdfJessLeonelVargasJimn
 
CENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdf
CENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdfCENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdf
CENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdfpaola110264
 
CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaSHERELYNSAMANTHAPALO1
 
Topografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasTopografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasSegundo Silva Maguiña
 
Linealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfLinealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfrolandolazartep
 
3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptx3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptxJhordanGonzalo
 
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)ssuser6958b11
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.ALEJANDROLEONGALICIA
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Francisco Javier Mora Serrano
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPJosLuisFrancoCaldern
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdfAnthonyTiclia
 
Historia de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdfHistoria de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdfIsbelRodrguez
 

Último (20)

Edificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRCEdificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRC
 
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
PRESENTACION DE CLASE. Factor de potencia
PRESENTACION DE CLASE. Factor de potenciaPRESENTACION DE CLASE. Factor de potencia
PRESENTACION DE CLASE. Factor de potencia
 
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIACOMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
COMPONENTES DE LA VIA FERREA UAJMS - BOLIVIA
 
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdfLEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
 
Tiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IITiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo II
 
Cadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operacionesCadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operaciones
 
Fisiología del Potasio en Plantas p .pdf
Fisiología del Potasio en Plantas p .pdfFisiología del Potasio en Plantas p .pdf
Fisiología del Potasio en Plantas p .pdf
 
CENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdf
CENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdfCENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdf
CENTROIDES Y MOMENTOS DE INERCIA DE AREAS PLANAS.pdf
 
CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresa
 
Topografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasTopografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la Ingenierías
 
Linealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfLinealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdf
 
3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptx3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptx
 
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
 
Historia de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdfHistoria de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdf
 

Electrónica digital: Método de Karnaugh

  • 1. 1 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 ...······ 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.
  • 2. 2 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 23 = 8 casillas, para cuatro variables tendremos 24 = 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 cbacbacbaf ······ ++= que como se ve, vale 1 para las combinaciones { } { }{ }{ }1,0,1,1,0,0,0,0,1,, =abc . 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 10 0 1 1 1 1 Casillas donde f = 1
  • 3. 3 { } { }{ }1,0,1,0,0,1,, =abc y otro con { } { }{ }1,0,1,1,0,0,, =abc Vemos que en el primer grupo la variable a aparece con 1 y con 0, por lo que la eliminamos, quedándonos c=1 y b=0 por lo que el término nos queda cb· . En el segundo grupo aparece la c negada y sin negar, por lo que la eliminamos, quedándonos b=0 y a=1 por lo que el término nos queda ab· . Por lo que la función simplificada queda: )·(··· cababbcf +=+= . A continuación se ponen unos cuantos ejemplos de grupos posibles para un diagrama de cuatro variables. ba dc 00 01 11 10 00 01 1 11 10 ba dc 00 01 11 10 00 01 1 1 11 1 1 10 ba dc 00 01 11 10 00 1 1 1 1 01 1 1 1 1 11 10 ba dc 00 01 11 10 00 1 1 01 1 1 11 1 1 10 1 1 No cambia ninguno, por lo que abcdf ···= Cambian b y d, por lo que queda caf ·= Cambian a, b y c, por lo que queda df = Cambian a, c y d, por lo que queda bf = ba dc 00 01 11 10 00 01 11 10 1 1 ba dc 00 01 11 10 00 01 1 11 1 10 ba dc 00 01 11 10 00 1 1 1 1 01 11 10 ba dc 00 01 11 10 00 1 01 1 11 1 10 1 Cambia a, por lo que queda bcdf ··= Cambia d, por lo que queda abcf ··= Cambian a y b, por lo que queda cdf ·= Cambian d y c, por lo que queda abf ·= ba dc 00 01 11 10 00 01 11 1 1 10 ba dc 00 01 11 10 00 1 1 01 11 10 1 1 ba dc 00 01 11 10 00 1 1 01 11 10 1 1 ba dc 00 01 11 10 00 1 1 01 1 1 11 1 1 10 1 1 Cambia b, por lo que queda acdf ··= Cambian d y b, por lo que queda acf ·= Cambian d y b, por lo que queda acf ·= Cambian b, c y d, por lo que queda af = Observemos que los cuatro últimos ejemplos no parecen cumplir con lo que dijimos acerca de los grupos, que debían ser un conjunto convexo. En realidad si que lo son. Debemos ver los diagramas de Karnaugh como una superficie continua, algo así como una caja de cartón desmontada que cuando se monta se cierra y se unen los lados. Se pueden coger estos grupos siempre que queramos, sin más condición que ser potencia de 2 y no ir en diagonal.
  • 4. 4 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 b0 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 b0. b1 ba dc 00 01 11 10 00 01 11 10 b0 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.
  • 5. 5 En primer lugar rellenamos los diagramas con unos en los lugares donde corresponda. b1 en las posiciones ( ) ( ) ( ) ( ){ }1,0,0,1,0,0,0,1,1,1,1,0,0,1,1,0 y b0 en las posiciones ( ) ( ) ( ) ( ){ }1,0,0,1,1,0,1,0,0.0,1,0,1,1,0,0 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,0,1,1,1,0 y otro por ( ) ( ){ }1,0,0,1,0,0,0,1 . Mientras que para b0 tendremos un grupo de dos unos formado por ( ) ( ){ }1,0,1,0,0.0,1,0 y dos grupos de un solo uno correspondientes a las combinaciones ( ){ }1,1,0,0 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 bcd ·· . En el grupo de abajo cambia la a también, por lo que nos queda bcd ·· . 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: bcdbcdb ····1 += bcdabcdabcdb ········0 ++= 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: bcddbcabcdbdbdcabcdabcdabcdb ··)·(···)···(·········0 +⊕=++=++= b1 ba dc 00 01 11 10 00 01 1 1 11 10 1 1 b0 ba dc 00 01 11 10 00 1 01 1 1 11 10 1 b1 ba dc 00 01 11 10 00 01 1 1 11 10 1 1 b0 ba dc 00 01 11 10 00 1 01 1 1 11 10 1
  • 6. 6 4. ESTADOS NO IMPORTA EN LAS FUNCIONES LÓGICAS En ocasiones, podemos encontrar combinaciones de entrada para las que no existe definida una salida. No estamos hablando de que sea 1 o 0, nos referimos a que simplemente, no se va a dar dicha combinación a la entrada, o si se da, carece de sentido. Para entender esto mejor pongamos un ejemplo: Sea un tanque de agua con tres sensores (boyas) que indican el nivel del agua. Si se activa el sensor 1 (combinación 001), significa que el agua llega a ese nivel. Si el agua sube, se activará también el segundo sensor (combinación 011), y así sucesivamente. De forma que la combinación 000 corresponde al tanque vacío, 111 al tanque lleno, etc. Pero ¿qué pasa con la combinación 110, por ejemplo? ¿Qué quiere decir esta combinación? Pues lo que quiere decir, es que el agua ha activado los sensores 2 y 3, pero no el sensor 1. Por lo que sabemos de física esto es imposible, ya que el agua no flota en el aire, por lo que es imposible que se activen los sensores 2 y 3 si antes no se ha activado el sensor 1. Esta combinación de entrada nunca se va a dar en nuestro sistema. Hay más combinaciones que nunca se van a dar como la 100, 101… ¿Qué hacemos con estas combinaciones a la hora de diseñar nuestro circuito? Como son combinaciones que no se van a dar, la función para estos valores no estará definida. Esto quiere decir que la salida para esa combinación de entrada puede ser cualquier cosa, 1 o 0. Nos da igual que tome un valor u otro, ya que, repetimos: Esa combinación de entrada no se va dar. A estas combinaciones imposible se las denomina “estados no importa” y se representan en la tabla de verdad como una x. Al valor x le podemos asignar el valor lógico 0 o 1 según nos convenga uno u otro. Se representan a continuación la tabla de verdad y los diagramas de Karnaugh de este sistema. La entrada son los tres sensores y la salida el valor binario del nivel del agua entre 0 y 3 (dos bits). Obsérvese como para las combinaciones imposibles (010, 100, 101 y 110) se ha puesto a la salida el estado lógico “no importa” representado por una x. Al trasladar nuestra tabla de la verdad a los diagramas de Karnaugh trasladamos los unos y las x a las casillas que corresponda. Ahora hacemos los grupos teniendo en cuenta que podemos usar las x como queramos, o sea, hacer que sean un 1 lógico si con ello conseguimos reducir el número de grupos o hacer los grupos mayores. 3 2 1
  • 7. 7 C B A b1 b0 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 b1 ba c 00 01 11 10 0 1 X 1 X X 1 X b0 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 b0 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.
  • 8. 8 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: b1 ba dc 00 01 11 10 00 01 1 1 11 X X X X 10 1 1 X X b0 ba dc 00 01 11 10 00 1 01 1 1 11 X X X X 10 1 X X En esta ocasión nos queda: bcdb ·1 += abcadbcb ····0 ++= 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. b1 ba dc 00 01 11 10 00 01 1 1 11 10 1 1 b0 ba dc 00 01 11 10 00 1 01 1 1 11 10 1 b1 ba dc 00 01 11 10 00 01 1 1 11 X X X X 10 1 1 X X b0 ba dc 00 01 11 10 00 1 01 1 1 11 X X X X 10 1 X X