Algebra de Boole

45
Compuertas lógicas y Álgebra de Boole Ing. Mónica P. René Universidad del Caribe 1

Transcript of Algebra de Boole

Compuertas lógicas y Álgebra de Boole

Ing. Mónica P. René

Universidad del Caribe

1

Introducción

2

Algebra booleana : herramienta de la matemática usada para el análisis y diseño de sistemas digitales.

Nos permite describir la relación entre la o las salidas de un circuito lógico y su entrada o entradas.

Las constantes y variables booleana solo puede tomar dos valores 0 o 1.

Las variables se usan para representar el nivel de voltaje presente en un cable o en las terminales de E/S de un circuito.

Introducción

3

En la lógica digital se usan otros término como sinónimos de 0 y de 1. Por ejemplo:

0 lógico 1 lógico

Falso Verdadero

Desactivado Activado

Bajo Alto

No Sí

Interruptor abierto Interruptor cerrado

Introducción

4

Por ejemplo, en cierto sistema digital el valor booleano 0 se podría asignar a cualquier voltaje comprendido entre el intervalo de 0 a 0.8 V, en tanto que el valor booleano de 1 se podría asignar a cualquier voltaje en un intervalo de 2 a 5V.

Así el 0 y el 1 booleanos no representan números reales (como en el álgebra común) sino el estado de una variable de voltaje, o lo que se conoce como nivel lógico.

Introducción

5

En el álgebra de boole solo existen tres operaciones algebraicas básicas (operaciones lógicas): OR, AND, NOT.

Para visualizar mejor las operaciones utilizamos una tabla de verdad.

Una tabla de verdad es un medio para describir cómo la salida lógica de un circuito depende de los niveles lógicos presentes en la entrada del circuito.

Como se trabaja con números binarios, las posibles combinaciones de entrada para una tabla de verdad de N entradas es: 2N

Introducción

6

Ejemplo para tres variables de entrada (A,B,C) se tendrá 8 (23 =8) combinaciones de entrada .

Los circuitos digitales llamados compuertas lógicas se pueden construir mediante componentes electrónicos (diodos, transistores y elementos pasivos) conectados de tal forma que la salida del circuito sea el resultado de una operación lógica básica aplicada a las entradas del circuito.

Veremos a continuación las compuertas lógicas básicas y las que se derivan de éstas.

Compuertas lógicas

Compuertas Lógicas: Circuitos electrónicos que implementan alguna de las funciones lógicas elementales, como la suma lógica, producto lógico e inversión lógica(o negación).

Tipos de compuertas lógicas:

• Básicas: AND, OR, NOT o INV

• Combinación de básicas: XOR o EX-OR

• Con salida invertida o negada: NAND, NOR,XNOR

Compuerta OR

Suma lógica (“O”)

Número mínimo de entradas:2 (Ej. A,B)

Notación: Z= A+B

Tabla de verdad:

Símbolo o representación circuital:

A B Z

0 0 0

0 1 1

1 0 1

1 1 1

Z A

B

7

Compuerta AND

Producto lógico (“Y”)

Número mínimo de entradas:2 (Ej. A,B)

Notación: Z=A . B

Tabla de verdad:

Símbolo o representación circuital:

Compuerta NOT

Inversión o negación o complemento lógico (“ INV”)

Número de entradas:1 (Ej. A)

Notación: Z=A

Z=A´

Tabla de verdad:

Símbolo o representación circuital:

Compuertas lógicas

A B Z

0 0 0

0 1 0

1 0 0

1 1 1

A Z

0 1

1 0

A Z

A

B

Z

8

Compuerta NAND

AND negada

Número de entradas: 2 (ampliable)

Notación: Z=(A.B)´ =A.B

Tabla de verdad:

Símbolo o representación circuital:

Compuerta NOR

OR negada

Número de entradas: 2 (ampliable)

Notación: Z=(A+B)´=A+B

Tabla de verdad:

Símbolo o representación circuital:

Compuertas lógicas

A B Z

0 0 1

0 1 1

1 0 1

1 1 0

A Z

B

A Z

B

A B Z

0 0 1

0 1 0

1 0 0

1 1 0

A

B

Z A.B

A

B

Z A+B

9

Compuerta XOR

OR exclusiva

Número de entradas: 2 (no ampliable)

Notación: Z=A´.B+A.B´

Z=A B

Tabla de verdad:

Símbolo o representación circuital:

Compuerta XNOR

XOR negada o invertida

Número de entradas: 2 ( no ampliable)

Notación: Z=A´.B´+A.B

Z=(A B)´=(A B)

Tabla de verdad:

Símbolo o representación circuital:

Compuertas lógicas

A B Z

0 0 0

0 1 1

1 0 1

1 1 0

A

B

Z

A B Z

0 0 1

0 1 0

1 0 0

1 1 1

A

B

Z

10

Circuito OR muy simplificado Circuito AND muy simplificado

D1

1N4004

D2

1N4004 R1

Vsal

V1

V2

Compuertas lógicas

V1 V2 Vsal

0 0 Diodos off 0

0 1 D1 off, D2 on 1

1 0 D1 on, D2 off 1

1 1 Diodos on 1

D1

1N4004

D2

1N4004 R1

Vsal

V1

V2

Vcc

V1 V2 Vsal

0 0 D1, D2 conducen

0

1 0 D1 abierto,D2 conduce

0

0 1 D1conduce, D2 abierto

0

1 1 D1, D2 abiertos 1 11

Inversor

Circuito real

R2

10.0

R310.0

Q1

2N3055A

VCC

5V

Vin

Vout

74S04D

IN OUT

Compuertas lógicas

Vout

Vinhightundefined

low

VCEsat

Vcc

12

Algunas aplicaciones simples de las compuertas

La compuerta AND como un dispositivo de habilitación/inhibición

13

1 seg

habilitación contador

Registro decodificador

y display de frecuencia Puesta a cero (reset)

entre impulsos de habilitación

1 seg

A

Algunas aplicaciones simples de las compuertas

14

Un sistema de alarma para cinturón de seguridad

15

Algunas aplicaciones simples de las compuertas

U1A

7432N

Sensores de puerta/ventana

Un nivel ALTO activa la alarma

ALTO=Abierto BAJO= Cerrado

Un sistema de alarma y detección de intrusos

16

Algunas aplicaciones simples de las compuertas

Una planta que almacena líquidos químicos que se requieren para el reciclaje de sus productos.

El sensor genera 5 V ,si la capacidad está por encima del 25%, caso contrario genera 0 V.

Tanque B

Tanque A Sensor de nivel

Sensor de nivel

La luz verde indica que los dos tanques están

Llenos por encima del 25% de su capacidad

Alto

Alto

Bajo

Algunas aplicaciones simples de las compuertas Subsistema de monitoreo funcional de un avión.

S1, S2: sensores del tren de aterrizaje (S)

I: interruptor bajar tren de aterrizaje

Si S =0 el mecanismo del tren de aterrizaje se extiende

Si S=1 el mecanismo del tren de aterrizaje se retrae

Si I= 0 el interruptor baja el tren de aterrizaje, I=1 el interruptor no baja el tren de aterrizaje

Se debe activar un led verde (LV), en el tablero de comando, si los tres mecanismos de aterrizaje (sensores e interruptor) están correctamente extendidos.

Se debe activar un led rojo (LR), en el tablero de comando, si cualquiera de los mecanismos falla al extenderse antes de aterrizar.

17

S1

S2

I

18

Algunas aplicaciones simples de las compuertas

S1

S2

I

TTL (transistor-transistor logic)

Transistores bipolares BJT

Alta velocidad

Bajo consumo

Baja inmunidad al ruido

Series TTL, LS-TTl, otras

Compuertas de hasta 8 entradas:

74LS04: séxtuple INV.

74LS08: cuádruple AND de 2 entradas.

74LS21: doble AND de 2 entradas.

74LS30: NAND de 8 entradas.

Compuertas compuestas:

74LS51: AND-OR-INV

Tecnologías de compuertas lógicas

U5A

74LS51D

8

11213

91011

CMOS (complementary metal oxide semiconductor)

Transistores Mosfet

Baja velocidad

Bajo consumo

Alta escala de integración

Alta inmunidad al ruido

Series CMOS 4000/4500

Cuádruples de 2 entradas:

4001: NOR.

4011: NAND.

4071: OR.

4081:AND

4030/4070:XOR

4069: séxtuple inversor.

Para mayor información consulte Apéndice A, Lógica MOS y CMOS de Fundamentos de diseño lógico, Charles H. Roth, Jr. 5° ed.

19

Tecnologías de compuertas lógicas, ejemplo hoja de datos

20

Tecnologías de compuertas lógicas, ejemplo hoja de datos

21

Práctica n°1 Compuertas lógicas.

Nota: ¿Cómo comprobar en la práctica que CI que contiene varias compuertas está fallado?

Existen diferentes tipos de fallos internos que se pueden presentar en un CI a la hora de implementar circuitos de forma práctica. Para una detección de fallas, se recomienda referirse a: Localización de Averías pag. 174 Fundamentos de sistemas digitales. Thomas Floyd.

Compuertas lógicas

22

Algebra de Boole

Tiene mucha aplicaciones por ejemplo: simplificación de la cantidad de compuertas

lógicas en una función, teoría de conjuntos , lógica matemáticas.

Fue desarrollada en 1847 por George Boole.

Pero en 1939 Claude Shannon la aplicó para el diseño de circuitos de conmutación.

El álgebra booleana que emplea solo dos valores, se denomina álgebra de conmutación.

23

Algebra de Boole, leyes y teoremas

A continuación, veremos leyes, teoremas, postulados y la aplicación del principio de

dualidad, para reducir expresiones mediante el Álgebra de Boole.

Principio de dualidad:

“Si queremos encontrar el dual de una expresión algebraica simplemente intercambiamos los operandos OR y AND y sustituimos los 0´s por 1´s y los 1´s por 0´s.” La siguiente tabla muestra los teoremas y leyes con aplicación del teorema de

dualidad.

24

Algebra de Boole, leyes y teoremas

dualidad

X+0=X X.1=X

X+X´=1 X.X´=0

X+X=X X.X=X

X+1=1 X.0=0

(X´)´=X involución

X+Y=Y+X XY=YX conmutatividad

X+(Y+Z)=(X+Y)+Z X(YZ)=(XY)Z asociatividad

X(Y+Z)=XY+XZ X+YZ=(X+Y)(X+Z) distributividad

(X+Y)´=X´Y´ (XY)´=X´+Y´ Ley de Morgan

X+XY=X X(X+Y)=X Ley de Absorción

25

Teoremas de simplificación:

XY+XY´= X

X+XY=X

(X+Y´)Y=XY

Leyes de Morgan:

(X+Y+Z+……..)´=X´Y´Z´……

Teoremas para la descomposición en

(X+Y) (X´+Z)=XZ+X´Y

Teorema de consenso:

XY+YZ+X´Z=XY+X´Z

(X+Y)(X+Y´)=X

X(X+Y)=X

XY´+Y=X+Y

(XYZ…..)´=X´+Y´+Z´+……

productos sumas y suma de productos:

XY+X´Z=(X+Z)(X´+Y)

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

26

Algebra de Boole, leyes y teoremas

Algebra de Boole, postulados y teoremas

Cuando una expresión se implementa utilizando compuertas lógicas, cada

literal de la expresión corresponde a una entrada de compuerta lógica.

Una tabla de verdad especifica los valores de una expresión booleana para

todas las posibles combinaciones de valores de las variables de la expresión.

Podemos demostrar los teoremas básicos utilizando circuitos

conmutadores, donde 0 representará un conmutador abierto y 1 representará

un conmutador cerrado.

27

X.X=X

=

X+X=X

=

X+0=X

=

28

X X X

X

X

X

X

XX

1

Algebra de Boole, postulados y teoremas

X.X´=0

=

X+X´=1

=

X+1=1

=

X

1

X X´0

29

Observaciones para cuando se evalúen expresiones booleanas :

Primero realizar las inversiones de los términos simples,

resolver las operaciones entre paréntesis,

cuando una operación contiene AND y OR, a menos que existan paréntesis, la operación AND tiene prioridad,

realizar las operaciones dentro de la barra y luego invertir (o negar) el resultado.

Ilustremos lo anterior con unos ejemplos en la pizarra.

Algebra de Boole, postulados y teoremas

Conversión de enunciados a expresiones booleanas:

Pasos principales en el diseño lógico de un circuito de conmutación combinatorio de una única salida:

1. Hallar una función de conmutación que especifique el comportamiento deseado del circuito.

2. Hallar una expresión algebraica simplificada para la función.

3. Implementar la función simplificada utilizando los elementos lógicos disponibles.

30

Álgebra de Boole

Álgebra de Boole

María ve la televisión si es lunes por la noche y ha terminado sus deberes.

• Se debe dividir cada proposición en otras proposiciones y asociar una variable booleana con cada una de ellas.

• Si una proposición puede tener un valor “verdadero” o “falso”, entonces podemos representar dicha proposición mediante una variable booleana.

• La variable booleana tendrá un valor de 1 cuando la preposición sea verdadera y un valor de 0 cuando la preposición sea falsa.

31

Álgebra de Boole

Frases como “voy a la tienda” u “hoy es lunes” pueden ser verdaderas o falsas, pero una orden como “ve a la tienda” no tiene valor lógico (no es ni verdadera ni falsa).

Para nuestro ejemplo dividimos la proposición en otras tres proposiciones componentes.

32

Álgebra de Boole

María ve la televisión si es lunes por la noche y ha terminado sus deberes.

Las palabras “si” (“no”), ”y” (“o”) no están incluidas en las proposiciones, simplemente muestran la relación existente entre las proposiciones.

Definimos una variable boolena para cada proposición, ej.

F=1 si María ve la televisión es verdadero; caso contrario F=0

A=1 si es lunes por la noche es verdadero; caso contrario A=0

B=1 si ha terminado sus deberes es verdadero; caso contrario B=0

Dado que F es verdadero si ambas son verdaderas entonces podemos representar la afirmación mediante:

F=A.B

33

Álgebra de Boole

Encuentre un circuito lógico que represente los siguientes enunciados:

• La alarma sonará si y sólo si la alarma está activada y la puerta no está cerrada, o si es después de las 6 de la tarde y la ventana no está cerrada

• La puerta del ascensor debe estar abierta si el ascensor está parado, se encuentra al nivel del piso y el intervalo de temporización no ha finalizado, o si el ascensor está parado, se encuentra al nivel del piso y se pulsa un botón.

34

Funciones booleanas

35

Una función booleana descrita por una expresión algebraica consta de variables binarias, las constantes 0 y 1, y los símbolos lógicos de operación

Forma canónica de una función, suma de productos y productos de suma

36

El álgebra de boole asocia a la suma de términos cuyas variables exclusivamente están multiplicándose como MINITERMINOS (o productos canónicos) y, a la multiplicación de términos cuyas variables están sumándose como MAXITERMINOS (o sumas canónicas). La tabla siguiente muestra los MINITERMINOS y MAXITERMINOS para tres variables.

Minitérminos Maxitérminos

x y z Términos Designación Términos Designación 0 0 0 x’y’z’ m 0 x+y+z M 0

0 0 1 x’y’z m 1 x+y+z ́ M 1

0 1 0 x’yz’ m 2 x+y ́ +z M 2

0 1 1 x’yz m 3 x+y ́ +z ́ M 3

1 0 0 xy’z’ m 4 x´ +y+z M 4

1 0 1 xy’z m 5 x´ +y+z ́ M 5

1 1 0 xyz’ m 6 x´ +y ́ +z M 6

1 1 1 x yz m 7 x´ +y ́ +z ́ M 7

Forma canónica de una función, suma de productos y productos de suma

37

Se puede formar una función booleana a partir de maxitérminos o minitérminos. Por ejemplo sea F es una función booleana que se define en base a la siguiente tabla de verdad:

x y z F

0 0 0 0

0 0 1 1

0 1 0 0

0 1 1 0

1 0 0 1

1 0 1 0

1 1 0 0

1 1 1 1

Forma canónica de una función

38

Entonces F = x’y’z + xy’z’ + xyz = m1 + m4 + m7

o en su forma dual : F’= m0 +m2 +m3+ m5 +m6

si complemento nuevamente vuelvo a obtener F=(F´)´ =(m0 +m2 +m3+ m5 +m6 )´ aplicando el teorema de Morgan:

F=(m0 +m2 +m3+ m5 +m6 )´ = m´0 m´2 m´3 m´5 m´6 =M0M2M3M5M6 y puedo

expresar también F en su otra forma canónica.

Forma canónica de una función

39

Cabe señalar que cada maxitérmino es un complemento de su minitérmino correspondiente, y viceversa.

Se dice que una función booleana expresada como suma de minitérminos o productos de maxitérminos está en forma canónica.

En esta configuración, los términos que forman la función deben contener

todas las variables presentes en la función.

La alarma sonará si y sólo si la alarma está activada y la puerta no está cerrada, o si es después de las 6 de la tarde y la ventana no está cerrada.

Diseñe la tabla de verdad que me represente el estado de la salida de la alarma según todas las posibles combinaciones de sus estados en la entrada.

Exprese la función de salida en su forma canónica de minitérminos.

Reduzca la función anterior mediante el álgebra de boole e implemente el circuito .

40

Ejemplos para resolver en clase:

Ejemplos para resolver en clase:

• Para el ejemplo de la puerta del ascensor, se le pide que:

1. diseñe la tabla de verdad,

2. encuentre la función de salida que representa a la puerta del ascensor cerrada, e

3. implemente un circuito para la función anterior (utilizando el mínimo número de compuertas lógicas).

41

Implicaciones del Teorema de Morgan:

(X+Y)´=X´Y´

(XY)´=X´+Y´

Regla, intercambio OR con AND (y viceversa) y coloco negación donde no existía y quito la que existía.

42

Algebra de Boole, implicaciones del teorema de Morgan

X

Y (X+Y)´

X

Y

X´Y´

X Y

X´Y´

X

Y

(X.Y)´

X

Y

X´+Y´ X´+Y´ X Y

Con compuertas NAND

Interpretación de símbolos lógicos

Indica que la salida será

baja cuando ambas

entradas sean altas

Con compuertas NOR

Salida activa en alto

cuando cualquiera de

las entradas sean bajas

43

Universalidad de las compuertas NAND y NOR

A X= (A.A)´=A´ A A´

A

B

(AB)´ X=AB A

B AB

A A´

B B´

X= (A´B´)´=A+B A

B A+B

A A´

A

B AB

A

B A+B

A

A

A

B

B

X= (A+A)´=A´

X= (A´+B´)´=AB

(A+B)´ A+B

X

Y

(X.Y)´

X´+Y´ X

Y

Universalidad de las compuertas NAND y NOR

44

Los diseñadores prefieren emplear compuertas NAND y NOR ya que generalmente son más rápidas y emplean menos componentes que las compuertas lógicas AND y OR. Supongamos que queremos implementar la siguiente función, F=(A+B)AC utilizando solo compuertas NAND, entonces tendremos:

45

Algebra de Boole, leyes y teoremas

Guía de ejercicios Álgebra de Boole Práctica N°2 Teoremas del Álgebra de Boole.