El algebra de george boole ccesa007

76
Contenido Introducci´ on Expresiones de Conmutaci´ on Compuertas L´ ogicas Minimizaci´ on de Funciones ´ Algebra de Boole Prof. Rodrigo Araya E. [email protected] Universidad T´ ecnica Federico Santa Mar´ ıa Departamento de Inform´ atica Valpara´ ıso, 1 er Semestre 2006 RAE ´ Algebra de Boole

Transcript of El algebra de george boole ccesa007

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Algebra de Boole

Prof. Rodrigo Araya [email protected]

Universidad Tecnica Federico Santa MarıaDepartamento de Informatica

Valparaıso, 1er Semestre 2006

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

1 Introduccion

2 Expresiones de Conmutacion

3 Compuertas Logicas

4 Minimizacion de Funciones

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Introduccion

En 1815 George Boole propuso una herramienta matematicallamada Algebra de Boole.

Luego en 1938 Claude Shannon propuso que con esta algebraes posible modelar los llamados Sistemas Digitales.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Algebra de Boole

El Algebra de Boole es un sistema matematico que utilizavariables y operadores logicos. Las variables pueden valer 0o 1. Y las operaciones basicas son OR(+) y AND(·).Luego se definen las expresiones de conmutacion como unnumero finito de variables y constantes, relacionadas mediantelos operadores (AND y OR).

En la ausencia de parentesis, se utilizan las mismas reglas deprecedencia, que tienen los operadores suma (OR) ymultiplicacion (AND) en el algebra normal.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Algebra de Boole

Leyes

En el algebra de Boole se cumplen las siguientes Leyes:

1) Conmutatividad:

X + Y = Y + X

X · Y = Y · X

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Algebra de Boole

Leyes

2) Asociatividad:

X + (Y + Z ) = (X + Y ) + Z

X · (Y · Z ) = (X · Y ) · Z

3) Distributividad:

X + (Y · Z ) = (X + Y ) · (X + Z )

X · (Y + Z ) = (X · Y ) + (X · Z )

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Algebra de Boole

Identidades

4) Elementos Neutros (Identidad):

X + 0 = X

X · 1 = X

5) Complemento:

X + X = 1

X · X = 0

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Algebra de Boole

Leyes

6) Dominacion:

X + 1 = 1 X · 0 = 0

Demostracion:

X + 1 = (X + 1) · 1 = (X + 1) · (X + X )

(X + 1) · (X + X ) = X + (1 · X ) = 1

7) Idempotencia:

X + X = X

X · X = X

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Algebra de Boole

Leyes

8) Doble complemento:

X = X

.

9) Absorcion:X + X · Y = X

X · (Y + X ) = X

Demostracion:

X + X · Y = (X · 1) + (X · Y ) = X · (1 + Y ) = X

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Algebra de Boole

Leyes

10) DeMorgan:

A · B = A + B

A + B = A · B

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Algebra de Boole

Teoremas

Luego se establecen los siguientes Teoremas:

Teorema de la Simplificacion

A + A · B = A + B

A · (A + B) = A · B

Demostracion: → A · A = 0

A · A + B = B

(A + B) · (A + B) = B

A · (A + B) · (A + B) = A · BA · (A + B) = A · B

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Algebra de Boole

Teoremas

Teorema del complemento unicoSuponemos 2 complementos para A (A1 y A2)

A + A1 = 1 A + A2 = 1A · A1 = 0 A · A2 = 0

Luego,

A1 = A1 · 1 = A1 · (A + A2) = A1 · A + A1 · A2

A1 = 0 + A2 · A1

A1 = A · A2 + A1 · A2 = (A + A1) · A2

A1 = 1 · A2 = A2

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Expresiones de Conmutacion

Algunas definiciones:

Literal: Es toda ocurrencia de una variable, ya seacomplementada o sin complementar, en una expresion deconmutacion.Por ejemplo, en la expresion de conmutacion:

A · B + C · A + D + B · 1

A, B, C y D son Variables.A, B, C , A, D y B son Literales.1 es una Constante.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Expresiones de Conmutacion

Algunas definiciones:

Expresion Dual: Esta expresion se obtiene, intercambiandolas operaciones AND por OR (y vice versa), e intercambiandolas constantes 0 por 1 y 1 por 0 en la expresion deconmutacion.Por ejemplo, para la expresion de conmutacion:

(A · B) + (C · D) + 0

La Expresion Dual es:

(A + B) · (C + D) · 1

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Funciones de conmutacion

Las funciones de conmutacion se pueden expresar: de FormaAlgebraica, mediante una Tabla de Verdad o en FormaCanonica.

La manera mas didactica de representar una funcion deconmutacion es mediante una Tabla de Verdad, ya que en ellase muestran los valores de salida para cada combinacion devalor de entrada.

Las Tablas de Verdad permiten modelar los SistemasCombinacionales.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Tablas de Verdad

Ejemplo de una tabla de Verdad

Dada la funcion de conmutacion: f (X1,X2,X3) = X1 + (X2 · X3)La Tabla de Verdad es:

X1 X2 X3 f (X1,X2,X3)

0 0 0 00 0 1 00 1 0 10 1 1 01 0 0 11 0 1 11 1 0 11 1 1 1

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Formas Normales

Dada una tabla de verdad tambien es posible obtener la formaalgebraica.

Existen 2 metodos para identificar la forma algebraica: laforma normal disyuntiva y la forma normal conjuntiva.

En el caso de la forma normal disyuntiva, es necesarioidentificar los 1’s que resultan de la tabla de verdad y formarlos terminos (conjunciones fundamentales) que losrepresentan.

Para formar las conjunciones fundamentales, se usa la variablecomplementada si para esa combinacion tiene un cero, o sedeja sin complementar, si en la combinacion hay un 1.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Formas Normales

Forma normal disyuntiva

Dada la Tabla de Verdad :

X1 X2 X3 f (X1,X2,X3)

0 0 0 00 0 1 0

0 1 0 1 → X1 · X2 · X3

0 1 1 0

1 0 0 1 → X1 · X2 · X3

1 0 1 1 → X1 · X2 · X3

1 1 0 1 → X1 · X2 · X3

1 1 1 1 → X1 · X2 · X3

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Formas Normales

Del ejemplo anterior, se suman las conjuncionesfundamentales, resultando la forma normal disyuntiva:

f (X1,X2,X3) = X1 · X2 · X3+X1 · X2 · X3+X1 · X2 · X3

+X1 · X2 · X3+X1 · X2 · X3

Estos terminos formados por todas las variables conectadasmediante operadores AND se denominan minterminos(conjunciones fundamentales).

Como la funcion de conmutacion corresponde a un OR detodos los minterminos, se puede expresar tambien de la formacanonica (OR canonico de AND).

F (X1,X2,X3) =∑

m(m0,m1, . . . ,mn)

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Formas Canonicas

Para la representacion de la forma canonica, se utilizan lasposiciones de los minterminos en la Tabla de Verdad.

Para el ejemplo anterior resulta:f (X1,X2,X3) =

∑m(2, 4, 5, 6, 7)

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Formas Canonicas

Minterminos en una Tabla de Verdad

Dada una Tabla de Verdad:

X1 X2 X3 Mintermino Etiqueta

0 0 0 X1 · X2 · X3 0

0 0 1 X1 · X2 · X3 1

0 1 0 X1 · X2 · X3 2

0 1 1 X1 · X2 · X3 3

1 0 0 X1 · X2 · X3 4

1 0 1 X1 · X2 · X3 5

1 1 0 X1 · X2 · X3 61 1 1 X1 · X2 · X3 7

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Formas Normales

En el caso de la forma normal conjuntiva, se opera de maneracontraria a la vista anteriormente.

En este caso es necesario identificar los 0’s que resultan de latabla de verdad y formar los terminos (disyuncionesfundamentales o maxterminos) que los representan.

Para ello se utiliza la variable complementada si para esacombinacion tiene un 1, o se deja sin complementar si en lacombinacion hay un 0.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Formas Normales

Forma normal conjuntiva

Dada la Tabla de Verdad :

X1 X2 X3 f (X1,X2,X3)

0 0 0 0 → X1 + X2 + X3

0 0 1 0 → X1 + X2 + X3

0 1 0 1

0 1 1 0 → X1 + X2 + X3

1 0 0 11 0 1 11 1 0 11 1 1 1

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Formas Normales

Del ejemplo anterior, se opera con un AND sobre lasdisyunciones fundamentales, resultando la forma normalconjuntiva:

f (X1,X2,X3) = (X1 + X2 + X3) · (X1 + X2 + X3)

·(X1 + X2 + X3)

De igual manera es posible expresar esta funcion deconmutacion, compuesta por maxterminos, de la formacanonica (AND canonico de OR).

F (X1,X2,X3) =∏

M(M0,M1, . . . ,Mn)

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Formas Canonicas

Para la representacion de la forma canonica, se utilizan lasposiciones de los minterminos en la Tabla de Verdad.

Para el ejemplo anterior resulta:f (X1,X2,X3) =

∏M(0, 1, 3)

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Formas Canonicas

¿Como pasar de una forma algebraica, directamente a unaforma canonica?

F (X1,X2,X3) = X1 + (X2 · X3)

= X1 · (X2 + X2) · (X3 + X3)

+(X1 + X1)(X2 · X3)

= X1 · X2 · (X3 + X3) + X1 · X2 · (X3 + X3)

+X1 · X2 · X3 + X1 · X2 · X3

= X1 · X2 · X3 + X1 · X2 · X3 + X1 · X2 · X3

+X1 · X2 · X3 + X1 · X2 · X3 + X1 · X2 · X3

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Formas Canonicas

¿Como convertir de una forma OR canonico de AND a unaforma AND canonico de OR?

F (X1,X2,X3) =∑

m(2, 4, 5, 6, 7)

F (X1,X2,X3) =∑

m(0, 1, 3)

= (X1 · X2 · X3) + (X1 · X2 · X3) + (X1 · X2 · X3)

F (X1,X2,X3) = (X1 + X2 + X3) · (X1 + X2 + X3) · (X1 + X2

+X3)F (X1,X2,X3) =

∏M(0, 1, 3)

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Funciones equivalentes

Se dice que dos funciones de conmutacion son equivalentes sitienen expansiones en forma canonica identicas. Es decir, quetienen valores de salida identicos para las mismascombinaciones de entrada.

Dicho de otra manera, dos funciones de conmutacion sonequivalentes si tienen la misma tabla de verdad.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Funciones equivalentes

¿Cuantas funciones distintas (No equivalentes) existen paraun numero n de variables?

22n

Esto se puede demostrar facilmente, construyendo tablas deverdad y basandose en que las funciones no equivalentestienen tablas de verdad distintas.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Algunos Operadores

Algunos operadores...

NOT F (X1) = X1

AND F (X1,X2) = X1 · X2

OR F (X1,X2) = X1 + X2

NAND F (X1,X2) = X1 · X2 = X1 + X2

NOR F (X1,X2) = X1 + X2 = X1 · X2

XAND F (X1,X2) = X1 · X2 + X1 · X2

XOR F (X1,X2) = X1 · X2 + X1 · X2

Tarea: Analizar las tablas de verdad de cada uno de estosoperadores.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Operadores funcionalmente completos

Se dice que un conjunto de operadores es funcionalmentecompleto si se puede expresar cualquier funcion deconmutacion, utilizando solo los operadores del conjunto.

Por ejemplo el conjunto {AND, OR, NOT} esfuncionalmente completo por definicion del algebra. Sinembargo el conjunto {AND, NOT} tambien lo es.

Otros conjuntos funcionalmente completos son: {NOR} y{NAND}.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Compuertas Logicas

Existen dispositivos electronicos que son capaces derepresentar funciones de conmutacion. Estos dispositivosdenominan Compuertas Logicas y estan construidos a basede silicio.

Las compuertas logicas son altamente usadas en el campo dela electronica digital, debido al bajo costo que se logra con laalta densidad de integracion.

Las compuertas corresponden a bloques fundamentales para laconstruccion de circuitos logicos y sistemas digitales.

Una red de compuertas logicas constituye un circuitocombinacional.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Compuertas Logicas

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Compuertas Logicas

Las compuertas pueden tener mas de una o dos entradas. Porejemplo la ecuacion de conmutacion F (A,B,C ) = A · B · Cpuede ser representada por:

O bien por:

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Compuertas Logicas

Ejemplo de compuertas

Representar la siguiente ecuacion mediante compuertas logicas.

F (A,B,C ,D) = (B + D) · (A + B) · C

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Compuertas Logicas

Las compuertas logicas se pueden encontrar en dispositivospequenos de uso general, llamadas pastillas logicas TTL. Sunumeracion corresponde a 74LSXXX.

Tambien existen dispositivos con alta densidad de integracioncomo PLA, CPLD y FPGA.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Compuertas Logicas

Las pastillas logicas internamente estan disenadas con variascompuertas, dependiendo de la pastilla. Por ejemplo un74LS32 internamente es de la siguiente forma:

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Minimizacion de Funciones

Minimizar una funcion F (X1,X2,X3, . . . Xn) es encontrar unafuncion equivalente G (X1,X2,X3, . . . Xn) que tenga el mınimonumero de terminos y literales.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Minimizacion de Funciones

Por ejemplo, si tenemos la siguiente tabla de verdad:

A B C D Z

0 0 0 0 10 0 0 1 00 0 1 0 10 0 1 1 00 1 0 0 10 1 0 1 00 1 1 0 10 1 1 1 1

A B C D Z

1 0 0 0 11 0 0 1 01 0 1 0 11 0 1 1 01 1 0 0 11 1 0 1 01 1 1 0 11 1 1 1 1

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Minimizacion de Funciones

Luego extraemos los minterminos

A B C D Z Mintermino

0 0 0 0 1 →A · B · C · D0 0 0 1 0

0 0 1 0 1 →A · B · C · D0 0 1 1 0

0 1 0 0 1 →A · B · C · D0 1 0 1 0

0 1 1 0 1 →A · B · C · D0 1 1 1 1 →A · B · C · D

A B C D Z Mintermino

1 0 0 0 1 →A · B · C · D1 0 0 1 0

1 0 1 0 1 →A · B · C · D1 0 1 1 0

1 1 0 0 1 →A · B · C · D1 1 0 1 0

1 1 1 0 1 →A · B · C · D1 1 1 1 1 →A · B · C · D

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Minimizacion de Funciones

La forma normal disyuntiva de la ecuacion queda de lasiguiente manera:

F (A,B,C ,D) = (A · B · C · D) + (A · B · C · D) + (A · B · C · D)

+(A · B · C · D) + (A · B · C · D) + (A · B · C · D)

+(A · B · C · D) + (A · B · C · D) + (A · B · C · D)+(A · B · C · D)

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Minimizacion de Funciones

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Minimizacion de Funciones

Si intentamos minimizar la ecuacion, resulta la siguienteexpresion:

F (A,B,C ,D) = (A · B · C · D) + (A · B · C · D) + (A · B · C · D)

+(A · B · C · D) + (A · B · C · D) + (A · B · C · D)

+(A · B · C · D) + (A · B · C · D) + (A · B · C · D)+(A · B · C · D)

= (A · B + A · B + A · B + A · B) · (C · D)

+(A · B + A · B + A · B + A · B) · (C · D)

+(A + A) · (B · C · D)

= (A + A) · (B + B) · (C · D + C · D) + (B · C · D)

= D + (B · C · D)

= D + (B · C )

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Minimizacion de Funciones

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Mapas de Karnaugh

Los mapas de Karnaugh son una herramienta grafica utilizadapara simplificar las ecuaciones logicas o bien, minimizarfunciones de conmutacion.

Estos mapas son una version modificada de la tablas deverdad, permitiendo mostrar la relacion entre las entradaslogicas y la salida deseada.

Los mapas de Karnaugh permiten el diseno de circuitos con elmınimo compuertas, por lo que tiene un alto impacto en lareduccion de costos.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Pasos para la construccion de un Mapa de Karnaugh

1) Al igual que en las tablas de verdad, una funcion de nvariables tiene 2n combinaciones de posibles valores deentrada. En el caso de los mapas de Karnaugh, estascombinaciones se representan mediante celdas.

n = 2 n = 3 n = 3 n = 4

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Pasos para la construccion de un Mapa de Karnaugh

2) Luego, las coordenadas de las celdas se enumeran, segun elcodigo Grey, quedando de la siguiente manera:

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Pasos para la construccion de un Mapa de Karnaugh

3) Si se tiene una tabla de verdad, basta con escribir en cadacelda la salida correspondiente de la tabla de verdad para cadacombinacion. Por ejemplo:

A B C Z

0 0 0 10 0 1 00 1 0 10 1 1 01 0 0 01 0 1 11 1 0 11 1 1 1

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Pasos para la construccion de un Mapa de Karnaugh

Equivalentemente se puede representar una funcion de laforma canonica, como mapa de Karnaugh. Para ello se debeasignar un 0 a una variable complementada y un 1 a unavariable sin complementar.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Pasos para la construccion de un Mapa de Karnaugh

Con esto se forma la siguiente numeracion para las celdas.

Luego si se quiere representar la funcionF (A,B,C ) =

∑m(0, 2, 3, 7), resulta:

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Pasos para la construccion de un Mapa de Karnaugh

Para 4 variables, la numeracion de las celdas corresponde a:

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Pasos para la construccion de un Mapa de Karnaugh

4) Dos celdas son adyacentes solo si difieren en una de lasvariables.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Pasos para la construccion de un Mapa de Karnaugh

5) Un subcubo es un conjunto de 2m celdas con valor 1, lascuales tienen la propiedad que cada celda del subcubo esadyacente a exactamente m celdas del conjunto.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Pasos para la construccion de un Mapa de Karnaugh

6) Los subcubos se pueden representar mediante terminosalgebraicos. Estos terminos estan compuestos por n −mliterales, donde n es el numero de variables y 2m es el tamanodel subcubo.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Pasos para la construccion de un Mapa de Karnaugh

7) Si se suman los terminos dados por los subcubos queabarcan todos los unos del mapa, se obtiene la funcionalgebraica.

Para que la funcion sea mınima, se debe buscar el mınimonumero de subcubos que cubren todos los unos. Esto se logra,buscando los subcubos de mayor tamano posible, sin importarque se traslapen.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Pasos para la construccion de un Mapa de Karnaugh

El siguiente mapa de Karnaugh:

Representa la funcion

F (A,B,C ,D) = D + B + C

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Minimizacion mediante Mapas de Karnaugh

En la practica, al utilizar el metodo de los mapas de Karnaughmanualmente, resulta util para un maximo de 5 o 6 variables.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Minimizacion mediante Mapas de Karnaugh

En el siguiente mapa de Karnaugh de 5 variables se identifican4 subcubos:

Resultando la ecuacionF (A,B,C ) = A · B · C · E + A · B · C · E + A · B · C · E

+A · B · C · E

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Minimizacion mediante Mapas de Karnaugh

Sin embargo en el mapa anterior no estan marcados lossubcubos mas grandes. Por lo que la funcion no es mınima.En el siguiente MK estan marcados los subcubos mas grandes.

Resultando la ecuacionF (A,B,C ) = B · C · E + B · C · E

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Mapas de Karnaugh (AND de OR)

Tambien es posible expresar funciones de la forma canonicaAND de OR en los mapas de Karnaugh.

Para ello es necesario identificar los subcubos que cubrentodos los ceros del MK.

Por ejemplo minimizar

F (A,B,C ,D) =∏M

(0, 2, 5, 8, 10, 13, 14)

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Mapas de Karnaugh (AND de OR)

El siguiente MK representa a la funcionF (A,B,C ,D) =

∏M(0, 2, 5, 8, 10, 13, 14). En el se deben

cubrir los ceros de mapa.

Resultando la ecuacion

F (A,B,C ,D) = (B + D) · (B + C + D) · (A + C + D)

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Minimizacion de Funciones

La minimizacion de funciones es fundamental tanto para eldiseno de procesadores, como de otros componentes digitalesque utilizan tecnologıa de alta densidad de integracion (comoVLSI).

La minimizacion no solo tiene un alto impacto en el costo delos dispositivos, sino que tambien en el rendimiento.

Sin embargo el metodo de MK no es viable en disenoscomplejos, como por ejemplo el diseno de un procesador,debido a la cantidad de variables que involucra.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Metodo Quine - McKluskey

El metodo de Quine y McKluskey es una tecnica tabular.

Esta tecnica resulta facil de programar, con lo que se lograuna herramienta automatica para la obtencion de expresionesde conmutacion mınimas.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Metodo Quine - McKluskey

Una expresion de conmutacion se puede escribir como unasuma de terminos donde cada termino esta compuesto defactores.

Por ejemplo:

F (A,B,C ) = A · B · C + B · C + . . .

Se define como implicante primo a un termino queesta contenido en la funcion y que la eliminacion de cualquierade sus literales genera un nuevo termino que no estacontenido en a funcion.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Metodo Quine - McKluskey

Implicantes Primos

Por ejemplo la funcion F (A,B,C ) = AB + C tiene 2 terminos(AB y C ), y ambos son implicantes primos.

En cambio la funcion F (A,B,C ) = ABC + A + BC tiene 3terminos, pero solo 2 de ellos son implicantes primos. Eltermino ABC no es implicante primo, ya que si se elimina laliteral A, queda el termino BC que ya existe en la funcion.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Metodo Quine - McKluskey

Se puede observar que los implicantes primos corresponden alos subcubos en un mapa de Karnaugh. Por lo tanto, laecuacion minimizada tendra tantos terminos, comoimplicantes primos tenga la funcion.

Los algoritmos computacionales para la minimizacion defunciones, se basan en la busqueda automatizada deimplicantes primos.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Metodo Quine - McKluskey

El metodo Quine-McKluskey genera el conjunto deimplicantes primos de una funcion dada.

Pasos para el desarrollo del metodo Quine - McKluskey

1) Para desarrollar el metodo, primero se debe contarcon la funcion de la forma canonica OR de AND.

2) Luego se representa cada termino, de la formabinaria.

3) Se agrupan los terminos en funcion de la cantidad de1’s que tengan.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Metodo Quine - McKluskey

Pasos para el desarrollo del metodo Quine - McKluskey

4) Cada grupo (que representa la cantidad de 1’s deltermino), se vuelve a agrupar con algun grupoadyacente buscando diferencias en un solo bit. El biten que difieren es reemplazado por “-”.

5) Se vuelve a aplicar el paso anterior. Para laadyacencia se debe considerar que el sımbolo “-” seencuentra en la misma posicion.

6) Finalmente Se deben cubrir todos los terminos de lafuncion original, utilizando el mınimo numero deimplicantes primos.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Metodo Quine - McKluskey

Ejemplo del metodo Quine - McKluskey

1) Como ejemplo se considera la siguiente funcion de laforma canonica OR de AND.

∑m(0, 2, 3, 5, 6, 7, 8, 9)

2) Se escribe cada termino, de la forma binaria:

(0) 0000(2) 0010(3) 0011(5) 0101(6) 0110(7) 0111(8) 1000(9) 1001

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Metodo Quine - McKluskey

Ejemplo del metodo Quine - McKluskey

3) Luego se agrupan los terminos, en funcion a lacantidad de 1’s que tienen.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Metodo Quine - McKluskey

Ejemplo del metodo Quine - McKluskey

4) Se reagrupan los grupos adyacentes, buscandodiferencias en un solo bit y reemplazando el bit enque difieren con un “-”.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Metodo Quine - McKluskey

Ejemplo del metodo Quine - McKluskey

5) Se vuelve a reagrupar considerando que el sımbolo“-” se encuentre en la misma posicion.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Metodo Quine - McKluskey

Ejemplo del metodo Quine - McKluskey

Los siguientes terminos corresponden a los implicantes primos:

(0,2) 00-0 → A(0,8) -000 → B(8,9) 100- → C(5,7) 01-1 → D

(2,3,6,7) 0-1- → E

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Metodo Quine - McKluskey

Ejemplo del metodo Quine - McKluskey

6) Finalmente se deben cubrir todos los terminos de lafuncion original, utilizando el mınimo numero deimplicantes primos.

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Metodo Quine - McKluskey

Ejemplo del metodo Quine - McKluskey

Los implicantes primos que representan a todos los terminospueden ser: C + D + E + B o C + D + E + A

Si se consideran terminos con las variables W ,X ,Y ,Z se traducea: W · X · Y + W · X · Z + W · Y + X · Y · Zo W · X · Y + W · X · Z + W · Y + W · X · Z

RAE Algebra de Boole

ContenidoIntroduccion

Expresiones de ConmutacionCompuertas Logicas

Minimizacion de Funciones

Fin...

Fin...

RAE Algebra de Boole