Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2-Funciones Booleanas PDF
2-Funciones Booleanas PDF
❒ textos y material de apoyo: Contemporary Logic Design 1st / 2nd edition. Gaetano
Borriello and Randy Katz. Prentice Hall, 1994, 2005
❒ material del curso ELO211 del Prof. Leopoldo Silva
❒ material en el sitio http://es.wikipedia.org
2: Funciones booleanas 1
2-Funciones y representaciones
booleanas
2.1 Lógica y álgebra de Boole
2.2 Funciones booleanas
2.3 Representaciones de funciones booleanas
2.4 Funciones de varias variables
2: Funciones booleanas 2
Lógica Booleana
❒ Definiciones básicas
❍ Una variable booleana (e.g. x, y) es un símbolo que
puede ser substituido por un elemento del
conjunto B={0,1}
❍ Una constante booleana es un valor perteneciente
al conjunto {0,1}
❍ Una expresión (e.g. x+y, x·y, x’) esta compuesta de
variables, constantes y operadores (e.g. +, ·, ’)
❍ Una función booleana de n variables f(x1, x2, ..., xn)
es un expresión o formula que mapea f a un valor
del conjunto booleano B (0 o 1)
❍ Un literal es una variable o su complemento
2: Funciones booleanas 3
Álgebra de Boole
❒ Definición: el álgebra de Boole es un
sistema algebraico cerrado que contiene:
❍ un conjunto de dos elementos {0, 1},
❍ dos operadores binarios {+, ·},
❍ un operador unitario { ‘ }.
2: Funciones booleanas 4
Lógica y álgebra de Boole
❒ El álgebra de Boole es la fundación matemática de
los sistemas digitales.
❒ Las operaciones del álgebra de Boole deben regirse
por propiedades y reglas lógicas llamados leyes o
postulados.
❒ Estos postulados se pueden usar para demostrar
leyes mas generales sobre expresiones booleanas.
❒ Estos postulados también se usan para simplificar
y optimizar expresiones booleanas y sistemas
digitales.
❍ Ejemplo: X AND (Y OR Y’) = X (¿porque?)
2: Funciones booleanas 5
Álgebra de Boole
❒ Una expresión algebraica de Boole consiste de
❍ un conjunto de B
❍ operaciones binarias { + , • }
❍ una operaciones unitaria { ’ }
❒ B tiene dos elementos : a, b y los siguientes postulados se cumplen:
Conmutatividad: a + b = b + a, a•b=b•a
Asociatividad: a + (b + c) = (a + b) + c
a • (b • c) = (a • b) • c
Identidad: a + 0 = a, a•1=a
Distributividad: a + (b • c) = (a + b) • (a + c)
a • (b + c) = (a • b) + (a • c)
Complementariedad: a + a’ = 1, a • a’ = 0
2: Funciones booleanas 6
Álgebra de Boole: Resumen
❒ Álgebra de Boole
❍ B = {0, 1}
❍ variables
❍ + es el OR lógico, • es el AND lógico
❍ ’ es el NOT lógico
❒ Todos los postulados (axiomas) algebraicos se
cumplen
❒ La prioridad de los operadores es ‘, seguido por
AND y despues OR.
❒ El ‘ tiene la mayor prioridad.
❒ Los ( ) pueden cambiar el orden de evaluación.
2: Funciones booleanas 7
Álgebra de Boole: Teoremas
2: Funciones booleanas 8
Álgebra de Boole: Teoremas
❒ Definición: El álgebra de boole es un sistema algebraico cerrado
que contiene un conjunto B de dos elementos {0,1} y tres
operadores {·, +, ‘}.
❒ igualdad: Dos expresiones son iguales si una puede ser substituida
por otra.
❒ identidad:
1. X + 0 = X 1D. X • 1 = X
❒ nulo (elementos únicos):
2. X + 1 = 1 2D. X • 0 = 0
❒ idempotencia:
3. X + X = X 3D. X • X = X
❒ involución:
4. (X’)’ = X
❒ complementariedad:
5. X + X’ = 1 5D. X • X’ = 0
2: Funciones booleanas 9
Álgebra de Boole: Teoremas
❒ conmutatividad:
6. X + Y = Y + X 6D. X • Y = Y • X
❒ asociatividad:
7. (X + Y) + Z = X + (Y + Z) 7D. (X • Y) • Z = X • (Y • Z)
❒ distributividad:
8. X • (Y + Z) = (X • Y) + (X • Z) 8D. X + (Y • Z) = (X + Y) • (X + Z)
❒ unificación (fusión):
9. X • Y + X • Y’ = X 9D. (X + Y) • (X + Y’) = X
❒ absorción:
10. X + X • Y = X 10D. X • (X + Y) = X
2: Funciones booleanas 10
Álgebra de Boole: Teoremas
❒ de Morgan:
❒ de Morgan generalizado:
2: Funciones booleanas 11
Álgebra de Boole: Teoremas
❒ Ejemplo: de Morgan:
2: Funciones booleanas 12
Álgebra de Boole: Teoremas
❒ Dualidad
❍ el dual de una expresión booleana se puede obtener remplazando
❍ • por +, + por •, 0 por 1, y 1 por 0, y dejando las variables sin
cambio
❍ cualquier teorema demostrado también esta demostrado para su
dual!
❍ un meta-teorema (teorema sobre teoremas)
❒ Dualidad:
16. X + Y + ... ⇔ X • Y • ...
❒ Dualidad generalizado:
17. f (X1,X2,...,Xn,0,1,+,•) ⇔ f(X1,X2,...,Xn,1,0,•,+)
❍ diferente que ley de De Morgan’s
❍ no es una manera para manipular (cambiar) expresiones sino para
generar otros teoremas que también son verdaderos
❍ Ej: El dual del teorema X + 0 = X o (X + 0 = X)D es X • 1 = X
2: Funciones booleanas 13
Álgebra de Boole: Teoremas
❒ Actividad:
❍ Demuestre este teorema: X • Y + X • Y’ = X
igualdad X • Y + X • Y’ = X • Y + X • Y’
distributividad (8) = X • (Y + Y’)
complementariedad (5) = X • (1)
identidad (1D) = X ➼
2: Funciones booleanas 14
Actividad: Álgebra de Boole
2: Funciones booleanas 15
2-Funciones y representaciones booleanas
2: Funciones booleanas 16
Funciones booleanas
❒ Espacios y funciones booleanas
❍ Si se define un espacio booleano como B={0,1}
❍ Usando el producto cartesiano se puede definir B2
= {0,1} x {0,1} = {(00), (01), (10), (11)}
❍ Para X = (X1, X2) podemos definir una función
booleana f de dos variables según:
f(X): B2 → B, cada punto de B2 se mapea a B
❍ Para n variables booleanas con X = (X1, X2, ... Xn) se
puede definir una función booleana f de n variables
según:
f(X): Bn → B, cada punto de Bn se mapea a B
❍ La función booleana puede tomar valores de 1 o 0
dependiendo de los valores de sus variables
2: Funciones booleanas 17
Funciones booleanas
❒ Espacios y funciones booleanas
❍ El conjunto uno (on set) de f, puede definirse
como los puntos X de Bn que se mapean a 1.
f1 : {X | f(X) = 1}
❍ El conjunto zero (off set) de f puede definirse
como los puntos X de Bn que se mapean a 0.
f0 : {X | f(X) = 0}
❍ Si el conjunto f1 = Bn se dice que f es una
tautología.
❍ Si el conjunto f0 = Bn se dice que f0 es vacío y no
es satisfacible.
2: Funciones booleanas 18
Funciones booleanas: tautología
De: http://es.wikipedia.org/wiki/tautología
2: Funciones booleanas 20
2-Funciones y representaciones
booleanas
2.1 Lógica y álgebra de Boole
2.2 Funciones booleanas
2.3 Representaciones de funciones booleanas
2.4 Funciones de varias variables
2: Funciones booleanas 21
Representaciones
❒ Las funciones booleanas se pueden describir
de variadas formas incluyendo:
❍ álgebra booleana
❍ tablas de verdad,
❍ diagramas de compuertas,
❍ diagramas temporales,
❍ diagramas de Venn,
❍ mapas de Karnaugh,
Por verse!
❍ N-cubos,
❍ lenguajes de descripción de hardware (HDL:
Hardware description languages) como Verilog o
VHDL
2: Funciones booleanas 22
Representaciones: álgebra booleana
❒ Las funciones booleanas se pueden describir con una
expresión de álgebra booleana.
Ejemplo: f(X, Y, Z) = XY + X’Z + XZ’
❒ La función puede evaluarse para las diferentes
combinaciones de valores que tomen las variables.
❒ Existen infinitas representaciones equivalentes de
una función a través de expresiones.
❒ El problema de síntesis lógica consiste en encontrar
la mejor expresión para representar una función.
2: Funciones booleanas 23
Representaciones: tabla de verdad
❒ Las funciones booleanas también se pueden
representar como una tabla de verdad.
❒ La tabla de verdad despliega todas las
combinaciones de valores de las variables y el
valor asociado de la función.
2: Funciones booleanas 24
Representaciones
❒ Ejemplos: tablas de verdad
X Y X•Y X Y X’ X’ • Y
0 0 0 0 0 1 0
0 1 0 0 1 1 1
1 0 0 1 0 0 0
1 1 1 1 1 0 0
X Y X’ Y’ X•Y X’ • Y’ ( X • Y ) + ( X’ • Y’ )
0 0 1 1 0 1 1
0 1 1 0 0 0 0
( X • Y ) + ( X’ • Y’ ) ≡ X=Y
1 0 0 1 0 0 0
1 1 0 0 1 0 1
2: Funciones booleanas 26
Diagramas de compuertas
X Y
❒ NOT : X’, X, ~X X Y 0
1
1
0
X Y Z
0 0 0
❒ AND: X•Y, XY, X∧Y X
Y Z 0 1 0
1 0 0
1 1 1
X Y Z
X 0 0 0
❒ OR: X+Y, X∨Y Y
Z 0 1 1
1 0 1
1 1 1
2: Funciones booleanas 27
Diagramas de compuertas
X Y Z
X 0 0 1
❒ NAND Z 0 1 1
Y
1 0 1
1 1 0
X Y Z
X 0 0 1
❒ NOR Z 0 1 0
Y 1 0 0
1 1 0
X Y Z
X 0 0 0
❒ XOR Y
Z 0 1 1
X⊕Y 1
1
0
1
1
0
X Y Z
X 0 0 1
❒ XNOR Y
Z 0 1 0
1 0 0
X=Y 1 1 1
2: Funciones booleanas 28
Diagramas de compuertas
❒ Existe mas de una forma de mapear
expresiones a compuertas
B T1 B Z
C C
T2 D
D
2: Funciones booleanas 29
Representaciones: diagrama temporal
❒ Un diagrama temporal es una representación de las
formas de las ondas de entradas y salidas de los
circuitos.
❒ Los bordes no se alinean exactamente (toma tiempo
para que una compuerta cambie de output)
2: Funciones booleanas 30
Representaciones: diagrama temporal
❒ Las señales de ondas se pueden apreciar usando
varias herramientas como: un simulador, usando un
analizador lógico o un osciloscopio
❒ Retardos de propagación en compuertas pueden
causar que las señales de entrada de otras
compuertas en cascada tengan carreras
❒ Estas carreras pueden causar errores o
perturbaciones (glitches)
❒ Los tiempos de propagación son acumulativos para
compuertas en cascada
2: Funciones booleanas 31
Representaciones: diagrama temporal
❒ Ejemplo: y = x + x’
X’ Carrera en señales de entrada
X
X t
X’
Y
perturbación
2: Funciones booleanas 32
Representaciones: diagramas de Venn
❒ Los diagramas de Venn provienen de la rama de las
matemáticas conocida como teoría de conjuntos.
❒ Estos diagramas son usados para mostrar gráficamente
la relación entre diferentes conjuntos
❒ Son equivalentes a las tablas de verdad al mostrar todas
las relaciones lógicas entre los conjuntos de interés
❒ Ejemplos:
A B
A+B
A·B
(A + B)’ (A + B)’
2: Funciones booleanas 33
2-Funciones y representaciones
booleanas
2.1 Lógica y álgebra de Boole
2.2 Funciones booleanas
2.3 Representaciones de funciones booleanas
2.4 Funciones de varias variables
2: Funciones booleanas 34
Funciones de n variables
❒ Si hay n variables la tabla de verdad tendrá 2n filas.
Cada fila tiene como resultado un 0 o un 1.
❒ El numero de posibles funciones (que resultan en 0 o
1) crece rápidamente, en termino de n es: 22ⁿ
❒ n = 0 indica una función con 0 variables.
X1
X2 F
Xn
2: Funciones booleanas 35
Funciones de n variables
❒ Ejemplo: para n=2 se tienen 22ⁿ = 16 funciones
X F
Y
X Y f0 f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15
0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
0 1
X Y Y’ X’
XY X xor Y X=Y X nand Y=(XY)’
X + Y X nor Y=(X + Y)’
❒ Como son las funciones equivalentes a la tabla?
❒ f0=0, f1=XY, f2=XY’, f3=X, f4=X’Y, ..., f14=X’Y’ + X’Y + XY’= A’ +
B’ = (AB)’, f15=1
2: Funciones booleanas 36
Conjuntos funcionalmente completos
❒ Cualquier expresión booleana puede ser
escrita mediante los operadores AND, OR y
NOT
❒ Estos conjuntos constituyen un conjunto
funcionalmente completo
2: Funciones booleanas 37
Conjuntos funcionalmente completos
❒ La función NAND también es funcionalmente
completa ya que puede implementar AND, OR
y NOT:
❍ NAND(A,B) = AB
❍ NAND(A,A) = A
❍ NAND(A, B) = A+B
2: Funciones booleanas 38
Conjuntos funcionalmente completos
❒ La función NOR también es funcionalmente
completa ya que puede implementar AND, OR
y NOT:
❍ NOR(A, B) = A + B
❍ NOR(A,A) = A
❍ NOR(A, B) = AB
2: Funciones booleanas 39
Actividad:
❒ Determine la función de álgebra booleana
para un sumador de un bit
❒ Inputs: A, B, Carry-in Cout Cin
A
S
B
Cout
Cin
2: Funciones booleanas 40
A
Actividad:
S
B
Cout
Cin
❒ Determine la tabla de verdad y la función de álgebra
booleana para un sumador de un bit
❒ Inputs: A, B, Carry-in Cout Cin
2: Funciones booleanas 41
Minimizar
❒ Usando teoremas para minimizar el sumador
implementación multinivel
compuertas con menos inputs
2: Funciones booleanas 45