Você está na página 1de 8

32

Electrnica Digital

LGEBRAS DE BOOLE DE 2 ELEMENTOS OPERACIONES BOOLEANAS Y PUERTAS LGICAS


1.1. Estructura de lgebra de Bolee 1.2. Casos de inters de lgebras de Boole binarias 1.3. Representacin grfica de las operaciones booleanas: puertas lgicas 1.4. Operaciones unitarias 1.5. Las operaciones booleanas en lenguaje de descripcin circuital: VHDL

1.1. Estructura de lgebra de Boole El lgebra de Boole es una estructura matemtica definida sobre un conjunto de elementos a, b, c,... por tres operaciones con las propiedades siguientes: con propiedad de involucin, a = a la complementacin o negacin, a , la operacin "o", a + b , asociativa y conmutativa la operacin "y", a.b , tambin asociativa y conmutativa siendo estas dos ltimas operaciones distributivas entre s

La finalidad de la Electrnica Digital es procesar la informacin. Para ello utiliza las operaciones definidas por George Boole en su investigacin sobre las leyes del pensamiento, publicada en 1854. En una poca de triunfo de las matemticas en la tarea de modelizar el mundo fsico, George Boole dio tambin forma matemtica a la combinacin de proposiciones; Boole introdujo, a la vez, un lenguaje formal (la lgica proposicional) y una estructura matemtica (el lgebra de Boole) capaz de representar y de validar tal lenguaje. Casi un siglo despus, en 1938, al estudiar los complejos circuitos de rels que se utilizaban en la comunicacin telefnica, Claude E. Shannon demostr que las operaciones booleanas son aptas para describir los circuitos con conmutadores y, tambin, para expresar clculos en el sistema de numeracin de base 2. Shannon estableci la posibilidad de utilizar la misma estructura matemtica (el lgebra de Boole) como soporte de un sistema de numeracin y clculo (el sistema binario) y proporcion una forma de construir las operaciones del lgebra booleana mediante la conexin de dispositivos fsicos (los conmutadores). Boole y Shannon fijaron los cimientos conceptuales para el procesamiento digital de la informacin. Gracias a ellos disponemos de un lenguaje formalizado capaz de expresar la combinacin de proposiciones, de un sistema de numeracin capaz de soportar clculos aritmticos y de una forma de materializar (es decir, de construir mquinas capaces de ejecutar) tanto el lenguaje como el sistema de numeracin. La base matemtica que soporta todo esto corresponde a la estructura de lgebra de Boole de dos elementos (el 0 y el 1): lgebra booleana binaria. Las mquinas digitales, aunque solamente saben trabajar con el 0 y el 1 (una lgica dual muy limitada), son capaces de manejar, a ms alto nivel (por programacin), la lgica difusa, las redes neuronales, la inferencia matemtica, la inteligencia artificial... Este tema presenta un resumen general de los conceptos fundamentales del lgebra de Boole y de sus operaciones, considerando en particular las tres lgebras binarias citadas: la lgica proposicional, el sistema de numeracin con base 2 y el lgebra de conmutadores. Adems, se expone la representacin grfica de las operaciones booleanas mediante puertas lgicas, como esquema para describir (y forma de construir) los circuitos digitales, y se introducen las operaciones unitarias que permiten expresar, con slo una de ellas, todo el lgebra booleana y, por lo mismo, permiten construir cualquier circuito digital con un solo tipo de puertas.
Toms Polln Santamara E.U.I.T.I.Z. Dpto. de Ing. Electrnica y C.

a . (b + c) = (a . b) + (a . c) a + (b . c) = (a + b) . (a + c)
y existiendo dos elementos nicos, 0 y 1, tales que

0 = 1

a+0 = a a.0 = 0

a +1 = 1 a.1 = a

1= 0 y a+a = 1 a.a = 0

Un ejemplo caracterstico de lgebra booleana lo constituye el conjunto partes de un conjunto dado (conjunto de todos sus subconjuntos) con las operaciones de complementacin, unin e interseccin; tales operaciones pueden representarse grficamente mediante los diagramas de Venn.

AUB

AIB

En relacin con el cuerpo de los nmeros reales, contrastando sus operaciones aritmticas de suma y resta con las operaciones "o" e "y" booleanas, el lgebra de Boole presenta las siguientes diferencias: La propiedad distributiva es doble; no slo de . (producto) respecto a + (suma), sino tambin de + (suma) respecto a . (producto). No existen elementos inversos respecto a las operaciones "o" e "y" y por ello no estn definidas las operaciones inversas (como son la resta y divisin aritmticas). Existe, en cambio, el elemento complementario. [Considrese el diferente papel que desempea el elemento complementario en relacin con los elementos inversos: - complementario a + a = 1 a. a =0 - inversos a + (-a) = 0 a .(1/a) = 1 ].

Universidad de Zaragoza

1. lgebras de Boole

33

34

Electrnica Digital

A partir de los axiomas que definen el lgebra de Bolee, pueden deducirse directamente, los siguientes teoremas operativos: Dualidad : toda expresin booleana sigue siendo vlida si se efectan, a la vez, los siguientes cambios: a a + (operacin "o") . (operacin "y") 01 Idempotencia: a+a = a a.a = a a + a.b = a + b Absorcin: a + a.b = a de Morgan: de Consenso:

a.(a + b) = a a.(a + b) = a.b a+b = a. b a . b = a+b a.b + a.c + b.c = a.b + a.c (a + b).(a + c).(b + c) = (a + b).(a + c)

Una operacin compuesta muy frecuente en el lgebra binaria es la denominada "o-exclusiva" a b , que corresponde a la funcin ser diferente o desigualdad; la denominacin "o-exclusiva" deriva de que esta operacin coincide con la "o", salvo en el caso 11 que adopta el valor 0: 0 0 = 0 ; 0 1=1 ; 1 0 =1 ; 11= 0 a b vale 1 cuando a b y vale 0 cuando a = b , es decir, a b = 1 si a = 0 y b = 1 o, tambin, si a = 1 y b = 0 o sea, a b = a.b + a.b . La expresin a.b + a.b representa la funcin "o-exclusiva" en trminos de operaciones booleanas bsicas, en la forma de suma de productos; tambin puede expresarse dicha operacin como producto de sumas, en la forma siguiente:

Como simple ejemplo de demostracin de teoremas, se incluye a continuacin la correspondiente a los teoremas de idempotencia:

a + a = a.1 + a.1 = a.(1 +1) = a.1 = a a.a = (a + 0).(a + 0) = a + 0.0 = a + 0 = a


[En el primer paso, se hace uso de los axiomas a.1 = a, a+0 = a; en el segundo, se aplica la propiedad distributiva; en el tercer paso, se utilizan los axiomas a+1 = 1, a.0 = 0 y en el cuarto, se emplean los mismos axiomas que en el primer paso.] El teorema de Dualidad se deduce de que todos los axiomas siguen siendo vlidos si se aplican sobre ellos dichos cambios (los tres a la vez) y, por lo tanto, tales cambios pueden generalizarse a cualquier expresin booleana. [Debe tenerse en cuenta que la Dualidad ha de ser aplicada a ambos miembros de una expresin booleana y no solamente a uno de ellos: sea la funcin y = a + c.b no es vlido hacer

a b = a.b + a.b = a.b + a.b = (a.b) . (a.b ) = (a + b).(a + b) = a.a + a.b + b.a + b.b = = a.b + b.a = (a.b) . (b.a ) = (a + b) . (b + a) = (a + b) . (a + b)

1.2. Casos de inters de lgebras de Boole binarias 1.2.1. Lgica proposicional Entenderemos por proposicin toda frase (afirmacin o negacin) que admite la asignacin de valores verdad (1) y mentira (0). La lgica proposicional trata de la combinacin de proposiciones para formar proposiciones compuestas; en tal sentido, deduce nuevas proposiciones a partir de las iniciales. Las funciones bsicas de la lgica proposicional son: negacin (no a), disyuncin (a o b), conjuncin (a y b), implicacin (a b) y equivalencia (a b). Las tres primeras operaciones coinciden, respectivamente, con las operaciones bsicas booleanas (negacin, "o" e "y") y las otras dos pueden expresarse en la siguiente forma: la implicacin a b equivale a la expresin a.b = 0 ( suceder a y que no suceda b es falso ) o a la expresin dual a + b = 1 ( o no sucede a o necesariamente sucede b ). la equivalencia a b equivale a la expresin a.b + a.b = 1 ( a y b son, a la vez, ciertas o son ambas falsas ). La lgica proposicional constituye un lenguaje formalizado, capaz de configurar decisiones lgicas a partir de la combinacin de proposiciones; tal lenguaje puede ser expresado mediante las funciones del lgebra booleana de dos elementos.

y = a + c.b " = a.(c + b)"

sino

y = a.(c + b) . ]

El lgebra booleana ms simple y de mayor inters prctico es la definida sobre un conjunto de slo dos elementos, que necesariamente han de ser el 0 y el 1:

negacin 0 = 1
1 = 0

operacin "o" 0+0


0+1 1+0 1+1

a+b 0 1 1 1

operacin "y" 0.0


0.1 1.0 1.1

a.b 0 0 0 1

En la operacin "o" predomina el valor 1, en el sentido de que si un operando tiene dicho valor 1, el resultado tambin es 1; mientras que para la operacin "y" el valor que prevalece es el 0.

1. lgebras de Boole Ejemplos:

35

36 1.2.2. Sistema binario de numeracin

Electrnica Digital

rD . dm = 1 a) A Dios rogando y con el mazo dando: ( rD : rogar a Dios; dm : dar con el mazo).
b) O me toca la lotera o me pego un tiro lot + tir = 1 ( lot : tener suerte en la lotera; tir : pegarme un tiro). c) En el pas de los ciegos el tuerto es rey: pc.t R

El sistema de numeracin en base 2 emplea solamente los dgitos 0 y 1, siendo 2n el valor relativo de la cifra que ocupa el lugar n (contado de derecha a izquierda, partiendo de 0). El esquema operativo de los cambios de base binario-decimal es el siguiente: e d c b a (base 2 = a.20 + b.21 + c.22 + d.23 + e.24 (base 10 Ejemplo: 10011000100101(2 = 1x1 + 0x2 + 1x4 + 0x8 + 0x16 + 1x32 + 0x64 + + 0x128 + 0x256 + 1x512 + 1x1024 + 0x2048 + + 0x4096 + 1x8192 = 9765(10

o tambin ( pc : estar en el pas de los ciegos; t : ser tuerto; R : ser rey). d) Todo hombre es mortal h m Juan es hombre j h Luego Juan es mortal j m? ( Efectuando la operacin "o" de las dos premisas y por el teorema de consenso h. m + h.J para lo cual han de ser nulos todos los sumandos e) p es una condicin necesaria y suficiente para q : p q

pc . t . R = 0 pc + t + R = 1

h. m = 0 J. h = 0 J . m = 0 ? h. m + J. h = 0 + m.J = 0 J . m = 0 ).
p . q + p . q = 1.

n(10 r1

2 c1 r2 2 c2 r3 2 c3 r4 2 c4 r5 2 c5 r6

Ejemplo:

cocientes restos 9765 1 4882 0 2441 1 1220 0

a .t + a. t= 1 f) Ser aragons y ser tozudo es una misma cosa : a t (todos los aragoneses son tozudos y todas las personas tozudas son aragonesas).
g) Me casar con una persona joven e inteligente o que tenga fortuna y no ronque

c = j.i + f.r
( c : decisin de casarme; j : ser joven; i : inteligente; f : rico; r : roncar). h) La alarma de un automvil suena cuando la llave de contacto est puesta y no lo est el cinturn de seguridad y, tambin, con el cinturn de seguridad puesto si la puerta del conductor est abierta a = ll . c + c . p ( a : alarma; ll : llave de contacto puesta; c : cinturn de seguridad puesto; p : puerta del conductor cerrada). i) En una oficina trabajan cuatro personas y han decidido que la msica ambiental estar activada solamente cuando lo deseen tres de ellas

2 1

610 0 305 1 152 0 76 0 38 0

n (base 10 = 1 r6 r5 r4 r3 r2 r1 (base 2

19 1 9 1 4 0 2 0

m = p1.p2.p3 + p1.p2.p4 + p1.p3.p4 + p2.p3.p4


( m : suena la msica; p1,p2,p3,p4 : la correspondiente persona -1,2,3,4- desea escuchar msica). 9765(10 = 10011000100101(2

1 1

1. lgebras de Boole

37

38

Electrnica Digital

Cualquier operacin de un sistema de numeracin puede realizarse mediante un algoritmo que contenga solamente sumas, restas y comparaciones. Ahora bien, en el caso del sistema binario estas tres operaciones pueden construirse con funciones booleanas sencillas; vase a continuacin para dos nmeros binarios de 1 solo dgito: suma: a 0 0 1 1 resta: a - b a 0 0 1 1 comparacin: a 0 0 1 1 b 0 1 0 1 b 0 1 0 1 b 0 1 0 1 igual 1 0 0 1 suma 0 1 1 0 resta 0 1 1 0 mayor 0 0 1 0 acarreo 0 0 0 1 acarreo 0 1 0 0 menor 0 1 0 0 igual = a.b + a.b = ab mayor = a.b menor = a.b resta = a.b + a.b = ab acarreo = a.b suma = a.b + a.b = ab acarreo = a.b acarreo = me llevo acarreo = me llevo

Sea dcba un nmero binario (base 2): a es la cifra de las unidades; el valor relativo de b es 2 y podemos referirnos a tal cifra como dosenas; c puede ser nominada como cuatrenas, ya que su valor relativo es 4, y d cuyo valor relativo es 8 puede ser llamada octenas. Habr 16 nmeros de 4 dgitos, desde el 0000 al 1111 (del 0 al 15 en base 10). Como regla general, toda la numeracin digital comienza por 0 = 000, no por 1, de forma que n dgitos o bits contienen 2n posibilidades que irn de 0 a 2n - 1. Asimismo, al representar los dgitos de un nmero genrico mediante variables con subndices a7 a6 a5 a4 a3 a2 a1 a0 se comienza por el subndice 0, ya que el valor relativo de las unidades es 20 y, de esta forma, el valor relativo del dgito ai es 2i. 1.3.3. lgebra de conmutadores Un conmutador o interruptor es un sistema de dos estados: cerrado, permitiendo el paso a su travs abierto, interrumpiendo dicho paso. Consideremos un conjunto de interruptores controlados de alguna forma y asignemos a cada interruptor una letra A, B, C,...: el smbolo A representa a todos aquellos interruptores, relacionados entre s, que se encuentran en todo momento en el mismo estado; a su vez, se denotan con A aquellos interruptores que, en todo momento, se encuentran en estado contrario al que tienen los interruptores A en dicho momento; la negacin o inversin se realiza mediante algn mecanismo que obliga a un interruptor a adoptar el estado contrario al de otro interruptor. La operacin "o" corresponde a conectar dos interruptores en paralelo mientras que la operacin "y" supone disponerlos en serie:
A A+B A B A. B

Obviamente las anteriores expresiones booleanas para la suma, resta y comparacin de dos dgitos pueden extenderse a nmeros binarios de ms de 1 dgito; precisamente en el captulo 3 dedicado a bloques aritmticos se estudian sumadores, restadores y comparadores para nmeros binarios de n dgitos. La expresin de estas tres operaciones aritmticas en trminos de operaciones booleanas implica que cualquier clculo en sistema binario puede realizarse algortmicamente mediante operaciones del lgebra de Boole de dos elementos.

A partir de estas operaciones y del concepto de negacin indicado puede describirse cualquier combinacin de interruptores, por compleja que sea la malla que dichos interruptores configuren.

1. lgebras de Boole

39

40

Electrnica Digital

Como ejemplo, consideremos el caso de dos interruptores elctricos conmutados: al accionar cualesquiera de ellos cambia el estado (encendida-apagada) de la lmpara conectada al conjunto; su tabla de verdad puede ser la siguiente: A 0 0 1 1 B 0 1 0 1 luz 1 0 0 1 luz = A.B + A.B

1.3. Representacin de las operaciones booleanas: puertas lgicas Las operaciones bsicas del lgebra de Boole (negacin, "o", "y") se representan grficamente en la forma que sigue:
a a a b a+ b a b a.b

En el primer caso, es el crculo el que expresa directamente la negacin o inversin; a veces se utiliza dicho crculo sin ms para indicar una negacin, como por ejemplo en las siguientes figuras:
a b a.b E CK

Esta funcin corresponde a la combinacin de conmutadores de la figura a, pero tambin puede construirse en la forma representada en la figura b que es el esquema circuital correspondiente a los interruptores conmutados comerciales.
A B A B

En el caso de una entrada de habilitacin E, la presencia de un crculo en la misma indica que se activa con 0, en lugar de con 1 (la habilitacin se produce cuando E = 0); si es una entrada de reloj CK, el crculo previo indica que dicho reloj acta en su flanco negativo (bajadas ), en lugar del flanco positivo (subidas ). Los smbolos que representan grficamente a las operaciones booleanas reciben el nombre de puertas lgicas. En tal sentido las tres primeras figuras son, respectivamente, un inversor, una puerta "o" y una puerta "y". Tambin se emplea el nombre de puerta lgica para designar la realizacin fsica de tales operaciones, en particular cuando se construyen con dispositivos electrnicos. La propiedad asociativa permite utilizar puertas "o" y puertas "y" de tres o ms entradas, que expresan la realizacin sucesiva de la operacin correspondiente.
=

A A figura a B figura b

El lgebra de conmutadores puede realizarse fsicamente mediante dispositivos muy diversos: mecnicos, fludicos, neumticos, rels, electrnicos..., que constituyen diversas formas de materializar el lgebra de Boole de dos elementos. La electrnica digital construye el lgebra de conmutadores utilizando transistores, de forma que aprovecha las excelentes propiedades de las seales elctricas (como soporte de la informacin) y de los transistores (como conmutadores electrnicos) y, en particular, aprovecha el diminuto tamao, la altsima velocidad de conmutacin y el reducido coste que se consigue cuando los transistores se integran en un circuito. ________________________ Existe un isomorfismo en cuanto a estructura matemtica (es decir, en cuanto a forma de operar) entre el sistema binario de numeracin, la lgica proposicional y el lgebra de conmutadores, como lgebras booleanas que son los tres. De dicho isomorfismo se deduce que el hombre dispone de mecanismos fsicos capaces de realizar clculos numricos en el sistema binario y de automatizar decisiones lgicas por combinacin de proposiciones en el marco de la lgica proposicional. Este isomorfismo estructural entre los conmutadores como dispositivos fsicos, el sistema binario como sistema de numeracin en el que realizar clculos y la lgica proposicional como lenguaje formal en el que desarrollar deducciones proporciona a las tcnicas digitales su magnfica capacidad para procesar informacin.

Habida cuenta de que en la operacin "o" predomina el valor 1, las puertas "o" quedan trabadas con valor 1 en la salida si una de sus entradas se fija a 1; lo mismo sucede en las puertas "y" respecto al valor 0.
1 1 0 0

En cambio, la forma de anular una entrada de una puerta "o" consiste en conectarla a valor 0 y, en el caso de una puerta "y", a valor 1.
0 =

1. lgebras de Boole

41

42 1.4. Operaciones unitarias

Electrnica Digital

Una puerta "y" de dos entradas a b puede ser utilizada para controlar el paso de una de ellas a, permitindolo o interrumpindolo segn que el valor de la otra entrada b sea 1 o 0; la puerta "y" acta como interruptor controlado por b, que deja pasar la seal a cuando b = 1 y no le permite el paso (salida 0) cuando b = 0.
a 1 a a 0

Aunque en la definicin del lgebra de Boole se establecen tres operaciones bsicas, existe un tipo especial de operaciones que podemos llamar unitarias porque con slo una de ellas se puede realizar toda el lgebra; las principales operaciones unitarias son la operacin "y-negada" (Nand) y la operacin "o-negada" (Nor). operacin "y-negada" (Nand):

ab = a .b

Una puerta "o-exclusiva" (funcin ser diferente o desigualdad) se representa con el smbolo de la figura y equivale a la combinacin de cinco puertas bsicas:

a = a .1 = a 1

a b = a.b + a.b = (a + b).(a + b)

a+b = a+b = a . b = a b = (a 1) (b 1) a . b = a . b = a b = (a b) 1
= puerta y-negada (Nand) = 1 1 1

La puerta o-exclusiva puede ser utilizada como inversor de a controlado por b: - cuando b = 0, y = a 0 = a.0 + a.0 = a , la seal a pasa directamente, - para b = 1, y = a 1 = a.1 + a.1 = a , la seal a pasa en forma invertida.
a 1 a a a

operacin "o-negada" (Nor):

ab = a + b

a = a + 0 = a0

a + b = a + b = ab = (ab)0 a . b = a + b = a b = (a0)(b0)
0 =

La negacin de la puerta "o-exclusiva" se denomina "y-inclusiva" (porque coincide con la operacin "y" incluyendo el caso 00) y corresponde a la funcin igualdad: da resultado 1 cuando los dos operandos son iguales 00, 11.

a b = a.b + a.b = (a + b).(a + b)

puerta o-negada (Nor)


= 0 = 0

Veamos una funcin booleana sencilla: para nmeros binarios de 3 dgitos bca (del 0 al 7) la condicin "ser nmero primo" afecta a todos los impares (a = 1) y al nmero 2 (010), resultando la funcin siguiente: y = a + c.b.a = a + c.b
c b a y = ser nmero primo

Comentario: la inversin puede expresarse segn la figura siguiente, pero (aunque en el papel no hay diferencia con las anteriores) tcnicamente es peor solucin porque supone una carga de dos entradas (con doble intensidad o capacidad de entrada).

Tambin otras operaciones como a . b o a + b son unitarias, pero no son utilizadas por no poseer la propiedad conmutativa.

1. lgebras de Boole Las operaciones "y-negada" y "o-negada" son conmutativas, pero no asociativas:

43

44

Electrnica Digital

(a b) c a (b c)

(a b) c a (b c)

La operacin "o-exclusiva" (ser diferentes) puede construirse con solamente cuatro puertas "y-negada" mediante la siguiente transformacin:

Por ello, las correspondientes puertas "o-negada" e "y-negada" de tres o ms entradas no equivalen directamente a la realizacin sucesiva de tales operaciones con dos entradas; es preciso aadir una inversin intermedia en cada paso (tal inversin restituye la propiedad asociativa al conjunto, al negar la operacin "o/y-negada" y convertirla en operacin "o/y"):
=

a b = a.b + a.b = a.b + a.b + a.a + b.b = a.(a + b) + b.(a + b) = = a.(a.b) + b.(a.b) = a.(a b) + b.(a b) = [a (a b)] [b (a b)]

Y, del mismo modo la operacin "y-inclusiva" (igualdad) puede construirse con solamente cuatro puertas "o-negada" mediante la transformacin:
=

a b = (a + b).(a + b) = (a + b).(a + b).(a + a ).(b + b) = (a + a.b).(b + a.b) = = [a + (ab)] . [b + (ab)] = [a(ab)][b(ab)]


=

El lgebra de Boole realizada con una de estas operaciones unitarias es muy uniforme (solamente utiliza un tipo de puertas lgicas), pero menos potente por carecer de la propiedad asociativa. Esta carencia determina la ineludible necesidad de colocar los correspondientes parntesis: - las expresiones a b c y a bc carecen de sentido, pues no indican el orden en que deben aplicarse las dos operaciones contenidas en ellas; - las puertas de tres o ms entradas deben expresarse como Nand(a,b,c,) y Nor(a,b,c,), respectivamente. La operacin "y-negada" se acomoda bien a expresiones del tipo suma de productos, a.b + c.d, ya que pueden convertirse directamente en la forma que sigue:

Veamos un par de ejemplos de transformacin de expresiones booleanas con operaciones bsicas a expresiones con puertas "y-negada":

y1 = "ser nmero primo de 3 dgitos" = a + c.b = a + c.b = a . (c.b) = a (c b)


c b a y = c b a y

a.b + c.d = a.b + c.d = (a.b) . (c.d) = (a b) (c d)


[En las dos expresiones, el nmero de puertas y la conexin entre ellas son idnticos; basta sustituir directamente todas las puertas "o" e "y" por puertas "y-negada"].

Por ltimo, sea la siguiente funcin y2:


=

y 2 = d.c + d.a + c.b + b.a + b.a = d.(c + a ) + b.(c + a ) + b.a = = (c + a ).(d + b) + b.a = (c + a ).(d + b) + b.a = [(c + a ).(d + b)] . (b.a) =

En cambio, la operacin "o-negada" se acomoda bien a expresiones del tipo producto de sumas, (a+b) . (c+d):

= [(c + a ) (d + b)] (b a) = [(c + a ) (d + b)] (b a) = = [(c . a) (d . b)] (b a) = [(c a) (d b)] (b a)


d y c = c b a d y

(a + b).(c + d) = (a + b).(c + d) = (a + b) + (c + d) = (ab) (c d)

b a

1. lgebras de Boole

45

46

Electrnica Digital

1.5 Las operaciones booleanas en lenguaje de descripcin circuital: VHDL Actualmente el diseo de circuitos digitales no se expresa en forma grfica sino en forma de texto, a travs de lenguajes de descripcin circuital; uno de los ms utilizado es el VHDL. A fin de desarrollar una aproximacin gradual al diseo con lenguajes de descripcin circuital, se incluye aqu la forma de describir las operaciones lgicas en VHDL; asimismo, al final del captulo 4 se incluye la descripcin VHDL de bloques combinacionales.
a
c b a y

y <= a or (b and not c);

d y

a) y <= not a; b) y <= '1' when a = '0' else '0';

c b a

y <= ((not d or not b) and (not c or not a)) or (b and a); y <= not ((d and b) or (c and a)) or (b and a);

a b

a) y <= a or b; b) y <= a when b = '0' else '1';

a b

a) y <= a and b; b) y <= a when b = '1' else '0';

a b

a) y <= a xor b; b) y <= not a when b = '1' else a; c) y <= '0' when a = b else '1';

a b

a) y <= a nand b; b) y <= '0' when (a = '1') and (b = '1') else '1';

a b

a) y <= a nor b; b) y <= '1' when (a = '0') and (b = '0') else '0';

a b c

a) y <= not (a and b and c); b) y <= '0' when (a = '1') and (b = '1') and (c = '1') else '1';

Você também pode gostar