Professional Documents
Culture Documents
1
ALGEBRA DE BOOLE
Tal como se la definió en la clase pasada, el álgebra de Boole es
una estructura definida sobre un conjunto B={a,b,c…} de dos
11/08/2011
elementos 0 y 1 en la que se definen dos operaciones suma (+) y
producto (*) y existe la operación de inversión.
Las propiedades son:
El elemento de identidad (elemento neutro) con respecto a la ( + ) es 0 y
con respecto al ( * ) es 1.
Los operadores + y * son conmutativos y son ambos asociativos:
George Boole (1815-1864)
a+b = b+a y (a+b)+c= a+ (b+c) "The Mathematical Analysis of
a*b = b*a y (a*b)* c = a*(b*c) Logic" (1847)
"An Investigation of the Laws of
Las operaciones son distributivos una con respecto a la otra: Thought" (1854)
a*(b+c) = (a*b)+(a*c)
a+(b*c) = (a+b)*(a+c)
Para cada elemento “a” de B existe su elemento inverso “ ã ” tal que:
a+ã =1
a*ã =0 a a 1
Se puede considerar a “ a ” y “ ã ” como complementarios desde el punto a*a 0
de vista lógico ….. (ojo)
2
LOS CONMUTADORES CUMPLEN CON EL ÁLGEBRA DE
BOOLE.
DEL ALGEBRA DE BOOLE A LA ELECTRÓNICA
DIGITAL PASANDO POR LÓGICA Y CONJUNTOS…
11/08/2011
El cálculo proposicional (CP) y la teoría de conjuntos (TC) son
instancias del Algebra de Boole.
Puertas Lógicas: El Algebra de Boole aplicada a los sistemas digitales
tiene las mismas tablas de verdad que en el CP considerando:
Suma Booleana como la Disyunción lógica o la puerta OR
Producto Booleano como la Conjunción lógica o la puerta AND
Inversión Booleana como la Negación o la puerta NOT
Convención (una entre varias posibles):
Tensión alta = 1 lógico
Tensión baja = 0 lógico
Para armar un procesador, la idea es ir resolviendo cada parte del
mismo en forma modular e independiente. Memoria, ALU, Registros,
Contadores, Direccionamiento de datos, etc.
Para eso hay que expresar cada uno de estos módulos como Funciones
Booleanas, y luego combinando puertas lógicas se pueden construir
circuitos lógicos que corresponden a funciones booleanas.
11/08/2011
a ϵ B sii a cumple con el álgebra de Boole.
Definimos f : Bn B
f (a1, a2, a3,…, an) = b sii b ϵ B.
4
a1 a2 a3 f (a1, a2, a3)
0 0 0 0
FUNCIONES BOOLEANAS 0 0 1 1
11/08/2011
0 1 0 1
f : B3 B
0 1 1 0
f (a1, a2, a3) = b
1 0 0 1
1 0 1 0
f (a1 , a2 , a3 ) b 1
1
1
1
0
1
0
1
Función Paridad:
Si la cantidad de unos que tiene el vector es
impar devuelvo un uno (1).
Si es par devuelvo un cero (0) (cero es par). 5
EXPRESIÓN DE LA FUNCIÓN BOOLEANA A
PARTIR DE UNA TABLA DE VERDAD
11/08/2011
f (a1 , a2 , a3 ) a 1 a 2 a3 a 1 a2 a 3 a1 a 2 a 3 a1a2 a3
Una expresión se dice
canónica si cada uno de sus a1 a2 a3 f (a1, a2, a3)
términos hace referencia a
todas las variables que 0 0 0 0
intervienen en la expresión,
ya sea en forma directa o 0 0 1 1
negada. 0 1 0 1
Las expresiones canónicas
conjuntivas son sumas de 0 1 1 0
términos conjuntivos (también
llamados minterms). 1 0 0 1
1 0 1 0
a 1 a 2 a3 1 1 0 0 6
cada uno es un minterm.
1 1 1 1
En la clase pasada definimos las
operaciones de inversión, suma y
producto Booleano y las
11/08/2011
asociamos con las operaciones
lógicas NOT, OR y AND.
Veremos su Implementación con
transistores BJT de las puertas:
•NOT
•NOR
•NAND 7
INVERSOR
PUERTA NOT
11/08/2011
Desde el punto de vista lógico
podemos expresar la función
del Inversor usando su
8
Tabla de verdad
11/08/2011
9
(xi)
11/08/2011
10
Capacidad de desarrollar cualquier función sólo con
puertas NAND
11/08/2011
Esta misma propiedad la tiene la puerta NOR y la
ANDORI y en general cualquier dispositivo
básico puede ser usado para 11
11/08/2011
integración (SSI) con
los que cualquier
persona puede
desarrollar el
dispositivo lógico
electrónico que desee
(incluso una
computadora)
desarrollando las
funciones a partir de la
tabla de verdad y
uniendo los terminales
de manera adecuada
12
11/08/2011
Componente 7408
4 AND x 2 13
11/08/2011
Componente 7432
4 OR x 2 14
11/08/2011
15
OPERACIÓN OR-EXCLUSIVO EN EL
ÁLGEBRA DE BOOLE a1 a2
a1 a2
11/08/2011
a1 a2 a 1 a2 a1 a 2 0 0 0
XOR - : 0 1 1
Propiedades: 1 0 1
x (y z) = (x y) z (asociativo) 1 1 0
xy=yx (conmutativo)
x · (y z) = x · y x · z (distributivo respecto de .)
x0=x
xx=0
x1=¬x
si x y = 0 => x = y
16
OPERACIÓN NEGACIÓN DE OR-EXCLUSIVO
EN EL ÁLGEBRA DE BOOLE: IGUALDAD
11/08/2011
a1 a2 a1 a2 a1 a2
0 0 0 1
0 1 1 0
1 0 1 0
1 1 0 1
NXOR
a1 a2 a 1 a 2 a1a2
17
11/08/2011
Notar que para hacer varios productos sólo hay que agregar diodos.
11/08/2011
19
HEMOS VISTO QUE UN PAR DE PUERTAS SE PUEDEN
IMPLEMENTAR CON LOS TRANSISTORES, VEREMOS MÁS
11/08/2011
ADELANTE QUE, DEPENDIENDO DE QUE TECNOLOGÍA
SE USE, SE PUEDE IMPLEMENTAR CADA PUERTA DE
MANERA DISTINTA.
EL DESAFÍO PASA AHORA POR DEFINIR CADA
COMPONENTE DE UN COMPUTADOR EN TÉRMINOS DE
LAS FUNCIONES BOOLEANAS Y LOS ELEMENTOS DEL
ÁLGEBRA DE BOOLE
20
El decodificador decodifica el
valor de la entrada.
DECODIFICADOR Si en la entrada tengo el vector
(0,0,0,0) la salida 0 debe tener
tensión en tanto que todas las
11/08/2011
demás tendrán tensión cero.
¿Cómo lo implemento?
11/08/2011
Se lo usaba con las
lámparas Nixie.
Se enciende un filamento
cuando de activa una línea
de salida, si viene (0111)
se enciende el filamento
con forma de 7 (siete).
En general cuando quiere
tomar una opción dado un
código determinado se usa
un decodificador
DECODER 4-10
22
DEMULTIPLEXOR
Dispositivo que cuenta
con una entrada de
señal y entradas de
11/08/2011
control y varias salidas
de señal.
Dependiendo del valor
ingresado en (a1 ,a0), la
señal saldrá por la
salida correspondiente.
Que función boleana representa al demultiplexor?
11/08/2011
f 00 (a1 , a2 ) s a 1 a 0 ,
f 01(a1 , a2 ) s a 1 a0 ,
f10 (a1 , a2 ) sa1 a 0 ,
24
f11(a1 , a2 ) sa1a0
UN DEMULTIPLEXOR ENVÍA LA ENTRADA A UNA
SALIDA DE VARIAS.
z1 z0
11/08/2011
0 ¬ z1 · ¬ z0 · y
1 ¬ z1 · z0 · y
DEMUX1-4
y
2 z1 · ¬ z0 · y
3 z1 · z0 · y
z
¬ z ·1 = ¬ z
0
Un Decodificador
1
1 habilita
z ·1 = z una línea de
salida
¬ z1 · ¬ z0
0
z1 1 ¬ z1 · z0
DECODER2-4
z0 2 z1 · ¬ z0
3 z1 · z0 25
DEMULTIPLEXORES ACOPLADOS
11/08/2011
26
MULTIPLEXOR
11/08/2011
a1 a0 f
0 0 x0
0 1 x1
El multiplexor tiene
varias entradas y una 1 0 x2
sola salida 1 1 x3
MUX4-1 27
MULTIPLEXOR
f (a1 , a2 ) x0 a 1 a 0 x1 a 1 a0 x2 a1 a 0 x3a1a0
11/08/2011
El multiplexor tiene varias entradas y una 28
sola salida
MUX4-1
UN MULTIPLEXOR NOS PERMITE ELEGIR
UNA SALIDA ENTRE VARIAS ENTRADAS
11/08/2011
z1 z0 s
0 0 x0
0 1 x1
1 0 x2
1 1 x3
x0 0
0
x1 1 equivalente a MUX4-1
1
x2 0
x3 1 z1
29
z0
MULTIPLEXOR DE ORDEN
SUPERIOR
11/08/2011
La forma de obtener
los valores de un
registro de la RAM es
usar multiplexores
30
CODIFICADOR PARA UN TECLADO
11/08/2011
31
CODIFICADOR DECIMAL A BINARIO
11/08/2011
Y0 = w1 + w3 + w5 + w7 + w9
Y1 = w2 + w3 + w6 + w7
Y2 = w4 + w5 + w6 + w7
Y3 = w8 + w9
32
Cambio de nomenclatura
11/08/2011
33
SI ACOPLAMOS UN CODIFICADOR A UN
DECODIFICADOR:
TENEMOS UN CONVERSOR DE CÓDIGOS
11/08/2011
34
El CONVERSOR DE CÓDIGOS SIRVIÓ
DE BASE PARA CREAR LAS ROM
11/08/2011
Hay que decirle al fabricante que realice los contactos asociados a las 35
ecuaciones .
Los productos para en el decodificador y las sumas en el codificador.
11/08/2011
Dirección
Dirección
RAM ROM
Datos
Datos
36
11/08/2011
Dirección
Datos
Datos
37
11/08/2011
1
¿Qué puertas lógicas tenemos que
usar para sumar de dos números
decimales en representación
binaria?
Recordar que 1 + 1 = 2
11/08/2011
7
11/08/2011
8
11/08/2011
9
11/08/2011
Sumador de cuatro bits
10
11/08/2011
11
11/08/2011
12
11/08/2011
An Bn Cn-1 Sn Cn An Bn Cn−1 Pero ¿Cuánto da sumar tres 1?
0 0 0 0 0 0 1 1 1
1 0 0 1 1 0 1 1 0
2 0 1 0 1 0 1 0 1
3 0 1 1 0 1 1 0 0
4 1 0 0 1 0 0 1 1
5 1 0 1 0 1 0 1 0
6 1 1 0 0 1 0 0 1
7 1 1 1 1 1 0 0 0
13
An Bn Cn-1 Sn Cn An Bn Cn−1 Pero ¿Cuánto da sumar tres 1?
0 0 0 0 0 0 1 1 1
1 0 0 1 1 0 1 1 0
2 0 1 0 1 0 1 0 1
11/08/2011
3 0 1 1 0 1 1 0 0
4 1 0 0 1 0 0 1 1
5 1 0 1 0 1 0 1 0
6 1 1 0 0 1 0 0 1
7 1 1 1 1 1 0 0 0
14
11/08/2011
15
11/08/2011
Full Adder 16
11/08/2011
Sumador de 2 bits.
Evitando inversores en cadena de acarreo
17
GENERADOR Y COMPROBADOR DE
PARIDAD EN LÍNEAS DE TRANSMISIÓN
11/08/2011
Dados dos números a y b, la
propiedad de tricotomia que
asegura que la relación entre a y
b puede ser
a<b ó a=b ó a>b
¿Cómo le decimos a una
computadora que haga esto?
Veamos el ejemplo con un bit y
luego generalicemos 21
a b a<b a>b a=b
11/08/2011
0 0 a=b F F V
0 1 a<b V F F
1 0 a>b F V F
1 1 a=b F F V
11/08/2011
23
COMPARADOR DE UN BIT CON PUERTA
ANDORI
11/08/2011
C: a > b
E: a = b
24
D: a < b
COMPARADOR DE CUATRO BITS
11/08/2011
A= a3 a2 a1 a0
B= b3 b2 b1 b0
A = B sólo si a3 = b3 ^ a2 = b2 ^ a1 = b1 ^ a0 = b0
O sea E = E3 * E2 * E1 * E0
A > B si a3 > b3 o
si a3 = b3 ^ a2 > b2 o
si a3 = b3 ^ a2 = b2 ^ a1 > b1 o
si a3 = b3 ^ a2 = b2 ^ a1 = b1 ^ a0 > b0
O sea C = C3 +E3*C2+E3*E2*C1 +E3*E2*E1*C0
25
A>B LO OBTENGO CON
C = C3 +E3*C3+E3*E2*C2+E3*E2*C1 +E3*E2*E1*C0
11/08/2011
26
Los Iguales de cada bit los obtenemos usando otras puertas ANDORI
11/08/2011
Para hacer un
comparador
completo
necesito tener la
salida de la
igualdad.
27
EL COMPARADOR COMPLETO CON
EL IGUAL TENDRÍA LA FORMA
11/08/2011
28
COMPARADOR BINARIO DE CUATRO
BIT
11/08/2011
54LS85/DM54LS85/DM74LS85
De National Semiconductor
En realidad viene preparado para acoplarlo con otros 29
para hacer comparaciones de mas de cuatro bits
PARA COMPARAR UN NÚMERO DE
OCHO BIT
11/08/2011
El criterio es que para aser si un numero es mayor 30
11/08/2011
Se pone un chip
comparador de los
cuatro bits de
menor peso, como
entrada del
comparador de
cuatro bits de
mayor
31
QUEDA ENTONCES
11/08/2011
32
1
otro posterior Cn
13/09/2011
Para estudiar el comportamiento de un
dispositivo, es común definir un comienzo en
5
13/09/2011
Reset : Pone en cero las salidas de interés.
6
13/09/2011
Esta realimentación hecha
7
13/09/2011
Eelctrónica Digital Latch y Flip-Flop
¿Cómo tengo que manejar
este circuito para que sus
salidas también sea una la
inversa de la otra?
O sea ¿qué valores deberán
adoptar b1 y b2 para que las
salidas cumplan lo querido?
8
13/09/2011
b1 b2 q
9
13/09/2011
b1 b2 q
n 0 1 1 0
b1 b2 q
n 1 0 0 1
n+1 1 1 0 1 b1 b2
1 0 0 1
0 1 1 0
1 1 10
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
11
13/09/2011
b1 b2 q
12
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
13
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
14
0
1
1
0
b2
1
0
b1
1
1
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
15
D Q
0
1
0
1
Qn+1
Qn
0
1
b2
1
0
1
b1
1
1
0
H
0
1
1
D
x
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
16
Q
0
1
D
0
1
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
17
Q
0
1
D
0
1
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
18
Q
1
D
1
13/09/2011
H Sn Rn Qn+1
1 1 0 1
1 0 0 Qn
1 1 1 Trato de
evitarlo
0 x x Qn
19
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
20
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
21
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
22
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
23
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
24
13/09/2011 Eelctrónica Digital REGISTROS
25
13/09/2011 Electrónica Digital Latch y Flip-Flop
26
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
27
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
28
13/09/2011
H Sn Rn Qn+1
1 1 0 1
1 0 0 Qn
1 1 1 Trato de
evitarlo
0 x x Qn
29
13/09/2011 Eelctrónica Digital REGISTROS
30
13/09/2011 Eelctrónica Digital REGISTROS
31
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
32
13/09/2011 Eelctrónica Digital REGISTROS
33
13/09/2011 Eelctrónica Digital Latch y Flip-Flop
34
13/09/2011 Electrónica Digital Latch y Flip-Flop
35
1
15
26/09/2011 Eelctrónica Digital REGISTROS
16
26/09/2011 Eelctrónica Digital REGISTROS
17
26/09/2011 Eelctrónica Digital REGISTROS
18
26/09/2011 Eelctrónica Digital REGISTROS
19
26/09/2011 Eelctrónica Digital REGISTROS
20
26/09/2011 Eelctrónica Digital REGISTROS
21
26/09/2011 Eelctrónica Digital REGISTROS
22
26/09/2011 Eelctrónica Digital REGISTROS
23
26/09/2011 Eelctrónica Digital REGISTROS
24
Q3 Q2 Q1 Q0
26/09/2011
0 0 0 0
0 0 0 1
0 0 1 0
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
1 1 0 1
25
1 1 1 0
1 1 1 1
Q3 Q2 Q1 Q0
26/09/2011
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
26
26/09/2011 Eelctrónica Digital REGISTROS
27
26/09/2011 Eelctrónica Digital REGISTROS
28
26/09/2011 Eelctrónica Digital REGISTROS
29
26/09/2011 Eelctrónica Digital REGISTROS
30