Вы находитесь на странице: 1из 47

Organizacin del

Computador 1
Lgica Digital 1
Algebra de Boole y compuertas
Representacin de la Informacin
La computadoras necesitan almacenar
datos e instrucciones en memoria
Sistema binario (slo dos estados
posibles)
Por qu?
Es mucho ms sencillo identificar entre slo
dos estados
Es menos propenso a errores
Lgica digital
Los circuitos operan con valores [0, 1], que
pueden ser interpretados lgicamente
como [Falso, Verdadero].

Idea: implementar las operaciones lgicas
y matemticas combinando circuitos
George Boole, desarroll un sistema
algebraico para formalizar la lgica
proposicional. El libro se llama Anlisis
matemtico de la lgica.
George Boole
1815-1864
Algebra de Boole
El sistema consiste en un clculo para
resolver problemas de lgica
proposicional (dos valores posibles [0, 1]
y tres operaciones:
AND (y)
OR (o)
NOT (no) )
Las variables Booleanas slo toman
los valores binarios: 1 0.

Una variable Booleana representa el
valor que puede tomar un bit, que
como vimos quiere decir:

Binary digIT
Algebra de Boole
Operadores bsicos
Un operador booleano puede ser
completamente descripto usando
tablas de verdad.
El operador AND es conocido como
producto booleano (.) y el OR como
co-producto booleano (+)
El operador NOT ( una barra
encima de la expresin) conocido
como complemento.
Funciones booleanas
Tabla de verdad de
esta funcin:



El NOT tiene ms
precedencia que el resto
de los operadores

Y el AND ms que el OR
Identidades del Algebra de Boole
Identidad 1.A=A 0+A=A
Nula 0.A=0 1+A=1
Idempotencia A.A=A A+A=A
Inversa A.A=0 A+A=1
Conmutativa A.B=B.A A+B=B+A
Asociativa (A.B)C=A.(B.C) (A+B)+C=A+(B+C)
Distributiva A+B.C=(A+B).(A+C) A.(B+C)=A.B+A.C
Absorcin A.(A+B)=A A+A.B=A
De Morgan (A.B) = A+B (A+B) = A.B

Ejemplo
Usando identidades booleanas podemos reducir esta
funcin:

(X+Y)(X+

Y)(

X+Z) DeMorgan
(XX + X

Y+YX+Y

Y)(

X+Z) Distributiva
(X + X

Y+YX + 0) (

X+Z) Indempotencia e Inversa


(X + X(

Y+Y)) (

X+Z) Nula y Distributiva


(X) (

X+Z) Inversa, Identidad y Nula


X

X+XZ Distributiva
XZ Inversa e Identidad
Frmulas equivalentes
Varias frmulas pueden tener la
misma tabla de verdad
Son lgicamente equivalentes
En general se suelen elegir formas
normales
Suma de productos:
F(x,y,z) = xy + xz +yz
Producto de sumas:
F(x,y,z) = (x+y) . (x+z) .(y+z)
Suma de Productos
Es fcil convertir una
funcin a una suma de
productos usando la tabla
de verdad.
Elegimos los valores que
dan 1 y hacemos un
producto (AND) de la fila
(negando si aparece un 0)
Luego sumamos todo (OR)
F(x,y,z) = (xyz)+(xyz)+(xyz)+(xyz)+(xyz)
Circuitos booleanos
Las computadores digitales contienen
circuitos que implementan funciones
booleanas
Cuando ms simple la funcin ms chico
el circuito
Son ms baratos, consumen menos, y en
ocasiones son mas rpidos!
Podemos usar las identidades del algebra
de Boole para reducir estas funciones.
Compuertas lgicas
Una compuerta es un dispositivo electrnico
que produce un resultado en base a un
conjunto de valores de valores de entrada

En realidad, estn formadas por uno o
varios transitores, pero lo podemos ver
como una unidad.
Los circuitos integrados contienen
colecciones de compuertas conectadas con
algn propsito
Compuertas Lgicas
Las ms simples: AND, OR, y NOT.






Se corresponden exactamente con las funciones
booleanas que vimos
Compuertas lgicas
Una compuerta muy til: el OR exclusivo (XOR)
La salida es 1 cuando los valores de entrada
difieren.
Usamos el simbolo para
el XOR.
Componentes digitales
Combinando compuertas se pueden
implementar funciones booleanas
Este circuito implementa la siguiente
funcin:
Simplificando las funciones se crean
circuitos ms chicos!
Ejemplo: La funcin Mayora
A B C M
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
ABC C AB C B A BC A C) B, M(A,
NAND y NOR son dos
compuertas muy
importantes.
Con la identidad de De
Morgan se pueden
implementar con AND u
OR.
Son ms baratas y ambas
por s solas son un
conjunto adecuado para
la lgica proposicional. Es
decir que cualquier
operador se puede
escribir usando cualquiera
de ellas.
Compuertas lgicas
NAND y NOR
Ejercicio
Ejemplo: NOT usando NAND



Utilizando solo NAND o NOR
realizar circuitos con la
misma funcionalidad que el
AND y OR
Circuitos combinatorios
Producen una salida especfica (casi)
al instante que se le aplican valores de
entrada
Implementan funciones booleanas
La aritmtica y la lgica de la CPU se
implementan con estos circuitos
Sumadores
Como podemos
construir un circuito
que sume dos bits X
e Y?
F(X,Y) = X + Y (suma
aritmtica)
Que pasa si X=1 e
Y=1?
Podemos usar un XOR para
la suma y un AND para el
acarreo

A este circuito se lo llama
Half-Adder
Half-Adder
X
Y

C
Half
Adder
Cmo se suman nmeros de dos bits?

Ej:

1 1
+ 1 1
___________________


Full Adders
Full Adders
Cmo se suman nmeros de dos bits?

Ej:
1
1 1
+ 1 1
___________________

0
Cmo se suman nmeros de dos bits?

Ej:
1 1
1 1
+ 1 1
___________________

1 0
Full Adders
Full Adders
Cmo se suman nmeros de dos bits?

Ej:
1 1
1 1
+ 1 1
___________________

1 1 0
Full Adder
X
Y
Ci

Co
Full Adders
Cmo se suman nmeros de dos bits?

Ej:
1 1
1 1
+ 1 1
___________________

1 1 0
En el caso de los Full Adders se asume que poseen una entrada ms, el acarreo.
Cmo es la tabla de
verdad de un Full
Adder?
Podemos mejorar
nuestro half-adder
para considerar un
acarreo en la
entrada.
Full-Adder
Half
Adder
X
Y
Ci

Co
Full Adder
Half
Adder

C

C
X
Y
Full Adders
He aqu el full adder
Full Adders
Ejercicio: disear un sumador de cuatro bits
usando half y/o full adders.

Ae
B

As
Full
Adder
A
A
B

As
Half
Adder
A
4
A
3
A
2
A
1
B
4
B
3
B
2
B
1
+
C
5
C
4
C
3
C
2
C
1
Adders
A
4
A
3
A
2
A
1
B
4
B
3
B
2
B
1
+
C
5
C
4
C
3
C
2
C
1
A
1
B
1

As
HA

As
FA

As
FA
Ae

As
FA
Ae
Ae
A
2
B
2
A
3
B
3
A
4
B
4
C
1
C
2
C
3
C
4
C
5
Sumador de cuatro bits:
Adders
Decodificadores
Decodificadores de n entradas pueden
seleccionar una de 2
n
salidas
Son muy importantes, por ejemplo:
Seleccionar una locacin en una memoria a partir
de una direccin colocada en el bus memoria
Decodificadores - Ejemplo
Decodificador 2-a-4
Si x = 0 e y = 1, que
lnea de salida
queda habilitada?
Selecciona una salida de
varias entradas
La entrada que es
seleccionada como salida es
determinada por las lneas
de control
Para seleccionar entre n
entradas, se necesitan log
2
n
lneas de control.
Multiplexores
Demultiplexor
Exactamente lo contrario
Dada una entrada la
direcciona entre n salidas,
usando log
2
n lneas de control.
As luce un multiplexor 4-a-1
Si S
0
= 1 y S
1
= 0,
que entrada es
transferida a la
salida?
Multiplexor - Ejemplo
Funcin Mayora
Ejercicio: Implementar la funcin
Mayora con un Multiplexor
Ejercicio: Implementar la funcin
Mayora con un Multiplexor
Ejercicio
Construir una ALU de 1 bit
3 entradas:
A, B, Carry
Cuatro operaciones:
A.B, A+B, NOT B, Suma(A,B,Carry)
Salidas
Resultado, Carry
Out
Alu de 1bit

Decoder

Full Adder
Alu de 1bit
Un ALU de 8 bits
Memoria ROM
ROM usando un decoder
Links
Libro Tanenbaum
Demo compuertas: http://www.play-
hookey.com/digital/derived_gates.html
Para ver Compuertas logicas en detalle:
http://www.csc.sdstate.edu/%7egamradtk/
csc317/csc317notes.html

Вам также может понравиться