DISEÑO DIGITAL UNIDAD 2: ALGEBRA DE BOOLE
M.C. RAFAEL ARTEAGA VELASCO
Unidad 2. Algebra de Boole. Boole.
El álgebra de Boole permite manipular relaciones proposicionales y cantidades binarias. Aplicada a las técnicas digitales se utiliza para la descripción y diseño de circuitos más económicos. Las expresiones booleanas serán una representación de la función que realiza un circuito digital. En esta unidad se trabaja con las teorías del creador de los circuitos lógicos, posteriormente se explicará cómo realizar la suma de minitérminos y el producto de un maxitérmino. Subtemas: 2.1 Teoremas y postulados del Algebra de Boole. 2.1.1 Postulados de D'Morgan. 2.2 Funciones lógicas. 2.2.1 Formas canónicas. 2.3 Simplificación Simplificación de funciones. 2.3.1 Suma de minitérminos. 2.3.2 Producto de maxitérminos.
2.1
Teoremas y postulados del Algebra de Boole.
El álgebra de Boole desarrollada por George Boole a mediados del siglo XIX constituye la base matemática en la que se ha fundamentado el desarrollo de la lógica digital y que, aún en la actualidad, continúa siendo el soporte matemático indispensable en la construcción de sistemas digitales. •
El algebra de Boole opera con variables que admiten sólo dos valores discretos y con que se pueden designar como verdadero-falso, si-no, bajoalto y 0-1 .
•
•
•
Hay que tener presente que estos símbolos no representan números , sino dos estados diferentes de un dispositivo. Cuando el 0 y el 1 booleanos representan el estado de una variable de tensión se hablan de niveles lógicos. Sólo existen tres tipos de operaciones básicas: negación (NOT), suma (OR) y producto (AND) . Estas operaciones básicas se llaman operaciones lógicas.
•
•
Los circuitos digitales llamados puertas lógicas se pueden construir mediante componentes electrónicos como diodos, transistores y resistencias conectados de tal forma que la salida del circuito es el resultado de una operación lógica básica realizada con las entradas. La lógica aritmética se parece a la aritmética binaria y las operaciones AND y OR tienen su similitud con la multiplicación y la suma respectivamente.
Principales compuertas lógicas y Algebra de Boole
Teoremas y postulados del Algebra de Boole
Teoremas y postulados del Algebra de Boole
2.2. Simplificación de funciones •
•
•
En Álgebra booleana, se conoce como término canónico de una función lógica a todo producto o suma en la cual aparecen todas las variables en su forma directa o inversa. Una Función lógica que está compuesta por operador lógico puede ser expresada en forma canónica usando los conceptos de miniterminos y maxiterminos . Todas las funciones lógicas son expresables en forma canónica, tanto como una "suma de miniterms" como "producto de maxiterms". Esto permite un mejor análisis para la simplificación de dichas funciones, lo que es de gran importancia para la minimización de circuitos digitales. Una función booleana expresada como una disyunción lógica (OR) de miniterms es usualmente conocida como "suma de productos", y su Dual de Morgan es el "producto de sumas", la cual es una función expresada como una conjunción lógica (AND) de maxiterms
TERMINO MINIMOS Y TERMINOS MAXIMOS •
Una variable binaria puede aparecer en su forma normal ( x ) o en la forma de complemento ( x’ ).
•
Considérese ahora dos variable binarias x y y combinadas con la operación AND; como cada variable puede aparecer de cualquier forma, habrá cuatro combinaciones posibles: x’y’ , x’y , xy´ y xy .
•
Cada uno de estos cuatro términos AND representan una de las diferentes áreas de producto normalizado. De igual manera, se pueden cambiar n variable para formar 2n términos mínimos.
•
Los 2n diferentes términos mínimos pueden determinarse por un método similar al mostrado en la siguiente tabla para tres variables.
Términos Mínimos y Máximos para tres variables
Términos Mínimos
Términos Máximos
Término
Designación
Término
Designación
0 0 0
x’y’z’
m0
x+y+z
M 0
0 0 1
x’y’z
m1
x+y+z’
M 1
0 1 0
x’yz’
m2
x+y’+z
M 2
0 1 1
x’yz
m3
x+y’+z’
M 3
1 0 0
xy’z’
m4
x’+y+z
M 4
1 0 1
xy’z
m5
x’+y+z’
M 5
1 1 0
xyz’
m6
x’+y’+z
M 6
1 1 1
xyz
m7
x’+y’+z’
M 7
x
y
z
PROCESO PARA UNA SUMA DE TERMINOS MINIMOS (forma normal disyuntiva) •
•
•
•
Se había dicho antes que para n variables binarias, se pueden obtener 2n términos mínimos diferentes y que cualquier función de Boole puede expresarse como una suma de términos mínimos. Los términos mínimos cuya suma define la función de Boole son aquellos que dan el 1 de la función en una tabla de verdad. Como la función puede ser 1 ó 0 para cada termino mínimo y ya que hay 2n términos mínimos, se pueden calcular las funciones posibles que pueden formarse con n variables como 2 2n Algunas veces es conveniente expresar la función de Boole en la forma de ella expandiendo primero la expresión a una suma de términos AND. Luego se inspecciona cada termino para ver si contiene todas las variables. Si le hace falta una o mas variables, se aplica la función AND con una expresión tal como x + x’, donde x sea una variable faltante. El siguiente ejemplo aclara este procedimiento.
Ejemplo: Expresar la función de Boole F = A + B’C como suma de términos mínimos. •
La función tiene tres variables: A, B y C. como el primer término A no tiene las otras dos variables por tanto: A = A (B + B’) = AB + AB’
•
Como la expresión carece de una variable: A = AB (C + C’) + AB’ (C + C’) = ABC + ABC’ + AB’C + AB’C’
•
El segundo término B’C carece también de una variable: B’C = B’C (A + A’) = AB’C + A’B’C
•
•
Combinando todos los términos se obtendrá: F = A + B’C = ABC + ABC’ + AB’C + AB’C’ + AB’C + A’B’C
Pero como AB’C aparece dos veces, y de acuerdo al teorema 1 (x + x = x), es posible quitar uno de ellos. Rearreglando los términos en orden ascendente se obtendrá finalmente: F = A’B’C + AB’C’ + AB’C + ABC’ + ABC = m1 + m4 + m5 + m6 + m7
•
Es conveniente algunas veces, expresar la función de Boole cuando está compuesta de una suma de términos mínimos por medio de la siguiente forma simplificada: F (A, B, C) = Σ (1, 4, 5, 6, 7)
Ejemplo miniterms
__ __
__
f m1 m3 m7 x y z x y z xyz f ( x, y, z ) (1,3,7)
Proceso para un producto de Términos Máximos
(forma normal conjuntiva) Cada una de las 2n funciones de
n
variables binarias pueden
expresarse como un producto de términos máximos. Para expresar las funciones de Boole como un producto de términos máximos se debe primero llevar a una forma de términos OR. Esto puede lograse usando la ley distributiva x + yz = (x + y)(x + z) y si hay una variable x faltante en cada término OR se le aplicará la función OR conjuntamente con xx’ . Este procedimiento se clarifica por medio del siguiente ejemplo:
Ejemplo: Expresar la función de Boole F = xy + x’z como un producto en la forma de términos máximos. Primero conviértase la función a términos OR usando la ley distributiva: F = xy + x’z = (xy + x’)( xy + z) = (x + x’)(y + x’)(x + z)(y + z) = (x’ + y)(x + z)(y + z)
La función se tiene tres variables: x, y y z. a cada termino OR le hace falta una variable, por tanto: x’ + y = x’ + y + zz’ = (x’ + y + z)(x’ + y + z’) x + z = x + z + yy ’ = (x + y + z)(x + y’ + z) y + z = y + z + xx’ = (x + y + z)(x’ + y + z)
Combinando todos los términos y quitando aquellos que aparezcan más de una vez se obtendrá finalmente:
F = (x + y + z)(x + y’ + z)(x’ + y + z)(x’ + y + z’) = M0 M2M4M5
Una forma conveniente de expresar esta función es de la siguiente manera:
F (x, y, z) = ∏ (0, 2, 4, 5)