Académique Documents
Professionnel Documents
Culture Documents
Anexo B
Funciones booleanas
El lgebra de Boole provee las operaciones y las reglas para trabajar con el conjunto {0, 1}.
Los dispositivos electrnicos pueden estudiarse utilizando este conjunto y las reglas asociadas al
lgebra de Boole. Las tres operaciones utilizadas mas comnmente son complemento, suma
booleana (OR) y producto (AND).
Cada expresin booleana representa una funcin. Los valores de esta funcin se obtienen
sustituyendo 0 y 1 en las variables presentes en la expresin.
Una funcin booleana de grado 2 es una funcin de un conjunto con cuatro elementos, pares
de elementos del conjunto {0, 1} en B, un conjunto con dos elementos. De manera tal que existen 16
funciones booleanas diferentes de grado 2.
123
Descripcin en VHDL de arquitecturas para implementar el algoritmo CORDIC
Identidad Nombre
x+x=x Idempotencia
x.x=x
x+0=x Identidad
x.1=x
x+1=1 Dominancia
x.0=0
x+y=y+x Conmutatividad
x.y=y.x
x + (y + z) = (x + y) + z Asociatividad
x . (y . z) = (x . y) . z
x + y . z = (x + y) . (x + z) Distributividad
x . (y + z) = x . y + x . z
( x. y) = x + y
( x + y) = x. y DeMorgan
Tabla B.1
Un minitrmino de las variables booleanas x1, x2, ... , xn es un producto booleano y1 . y2 ... yn
en donde y i = xi o bien y i = xi . Un literal es una variable booleana o su complemento. Por lo tanto
124
Descripcin en VHDL de arquitecturas para implementar el algoritmo CORDIC
x y z F(x,y,z)
0 0 0 0
1 0 0 0
0 1 0 0
1 1 0 0
0 0 1 0
1 0 1 0
0 1 1 1
1 1 1 1
Tabla B.2
F ( x, y, z) = x. y.z + x.y.z
x + y = x. y
x.y = x + y
x= x|x
x.y = ( x | y) | ( x | y)
125
Descripcin en VHDL de arquitecturas para implementar el algoritmo CORDIC
x = x\0
x.y = ( x \ 0) \ ( y \ 0)
En virtud de la completitud funcional de { . , }, queda demostrada la completitud de { | }
y { \ }.
(a) (b) (c )
Figura B.1
126
Descripcin en VHDL de arquitecturas para implementar el algoritmo CORDIC
La expansin inicial utiliza tres compuertas lgicas y un inversor, mientras que la expansin
final utiliza slo una compuerta.
Para reducir el nmero de trminos en una expresin booleana, se pueden utilizar las
identidades definidas en la seccin B.2 para encontrar los trminos que se puedan combinar. Sin
embargo esta tarea puede complicarse a medida que aumenta el nmero de variables.
Algunos de los mtodos que se utilizan para simplificar expresiones booleanas los
constituyen el Mapa de Karnaugh que es un mtodo grfico para encontrar los trminos que se
pueden combinar en una expresin y el mtodo de Quine-McCluskey utilizado en expresiones con
un gran nmero de variables [23] [24].
127