Академический Документы
Профессиональный Документы
Культура Документы
3 de abril de 2012
Prctica 2 a
Repasar los operadores y propiedades del algebra de boole vistas en la terica y utilizarlas para implementar circuitos o combinatorios simples.
Prctica 2 a
Repasemos. . .
Operadores lgicos: Pueden ser completamente descriptos o usando su tabla de verdad.
AND, OR, NOT Operadores bsicos a NAND, NOR Operadores universales
Expresiones booleanas:
Combinacin de operadores lgicos y variables booleanas. Ej. o o F (X , Y , Z ) = X + Y Z . Orden de precedencia en la evaluacin NOT > AND > OR. o Dos expresiones son iguales sii tienen la misma tabla de verdad. Identidades booleanas: Reducciones utilizando propiedades o leyes. X YZ + X Y Z + XZ == X Y + XZ
Prctica 2 a
Propiedades
Identidad Nulo Idempotencia Inverso Conmutatividad Asociatividad Distributividad Absorcin o De Morgan 1.A = A 0.A = 0 A.A = A A.A = 0 A.B = B.A (A.B).C = A.(B.C ) A + B.C = (A + B).(A + C ) A.(A + B) = A (A.B) = A + B 0+A=A 1+A=1 A+A=A A+A=1 A+B =B +A (A + B) + C = A + (B + C ) A.(B + C ) = A.B + A.C A + A.B = A (A + B) = A.B
No existe una forma mecnica y facil para reducir una a funcin, hay que practicar. o De esto se deduce que no hay una unica forma de escribir una funcin lgica, surge la necesidad de las formas cannicas. o o o
Prctica 2 a
Formas Cannicas o
La idea es, dada una tabla de verdad escribir una expresin o booleana que la represente. Las dos tcnicas que vamos a ver son Suma de Productos y e Producto de Sumas. No necesariamente vamos a obtener la expresin Optima (o o sea la que use menos operadores).
Prctica 2 a
Suma de productos
Por cada valor de la funcin que sea 1 escribimos un trmino o e utilizando todas las variables unidas por operadores AND, de forma tal que el trmino tambin valga 1. Luego combinamos e e todo con operadores OR. Probemos con un ejemplo sencillo:
A 0 0 1 1 B 0 1 0 1 F(A,B) 0 1 1 0
Producto de sumas
Por cada valor de la funcin que sea 0 escribimos un trmino o e utilizando todas las variables unidas por operadores OR, de forma tal que el trmino tambin valga 0. Luego combinamos e e todo con operadores AND. Usando el ejemplo anterior:
A 0 0 1 1 B 0 1 0 1 F(A,B) 0 1 1 0
F (A, B) = (A + B)(A + B)
Prctica 2 a
Compuertas lgicas o
Una compuerta es un dispositivo electrnico que produce un o resultado en base a un conjunto de valores de entrada. Se corresponden exactamente con los operadores que vimos antes.
Prctica 2 a
Compuerta NOT
A 0 1
NOT A 1 0
Prctica 2 a
Compuerta AND
A 0 0 1 1
B 0 1 0 1
A AND B 0 0 0 1
Prctica 2 a
Compuerta OR
A 0 0 1 1
B 0 1 0 1
A OR B 0 1 1 1
Prctica 2 a
A 0 0 1 1
B 0 1 0 1
A XOR B 0 1 1 0
Prctica 2 a
Compuerta NOR
A 0 0 1 1
B 0 1 0 1
A NOR B 1 0 0 0
Prctica 2 a
Compuerta NAND
A 0 0 1 1
B 0 1 0 1
A NAND B 1 1 1 0
Prctica 2 a
http://cedarlogic.scienceontheweb.net/
Prctica 2 a
Ejercicio 1
Prctica 2 a
1.A = A 0.A = 0 A.A = A A.A = 0 A.B = B.A (A.B).C = A.(B.C ) A + B.C = (A + B).(A + C ) A.(A + B) = A (A.B) = A + B
0+A=A 1+A=1 A+A=A A+A=1 A+B =B +A (A + B) + C = A + (B + C ) A.(B + C ) = A.B + A.C A + A.B = A (A + B) = A.B
Prctica 2 a
Una solucin: o (X .Y ).Z + X .Z + (Y + Z ) De Morgan (X .Y ).Z + X .Z + Y .Z Distributiva (X .Y ).Z + (X + Y ).Z De Morgan (X + Y ).Z + (X + Y ).Z Distributiva (X + Y ).(Z + Z ) Inverso (X + Y ).1 Identidad X + Y Listo!, probamos que es igual
Prctica 2 a
Ejercicio 2
Dada la siguiente tabla de verdad: A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 F 0 1 0 1 0 0 0 1
Escribir una expresin booleana que la represente. o Implementarla utilizando a lo sumo una compuerta AND, una compuerta OR y una compuerta NOT.
Prctica 2 a
1.A = A 0.A = 0 A.A = A A.A = 0 A.B = B.A (A.B).C = A.(B.C ) A + B.C = (A + B).(A + C ) A.(A + B) = A (A.B) = A + B
0+A=A 1+A=1 A+A=A A+A=1 A+B =B +A (A + B) + C = A + (B + C ) A.(B + C ) = A.B + A.C A + A.B = A (A + B) = A.B
Prctica 2 a
Expresamos como una suma de productos: (A.B.C ) + (A.B.C ) + (A.B.C ) Como nos restringen la cantidad de compuertas tenemos que simplicar. (A.B.C ) + (A.B.C ) + (A.B.C ) Distributiva ((A.B) + (A.B) + (A.B)).C Distributiva ((A.B) + (A + A).B).C Inverso ((A.B) + 1.B).C Identidad ((A.B) + B).C Distributiva ((A + B).(B + B)).C Inverso ((A + B),1).C Identidad (A + B).C Bingo!
Prctica 2 a
Prctica 2 a
Prctica 2 a
Ejercicio 3
Armar un inversor de 3 bits. Este circuito invierte o no tres entradas de acuerdo al valor de una cuarta que acta como u control. En otras palabras, un inversor de k-bits es un circuito de k+1 entradas (e1 , ..., ek , ek+1 ) y k salidas (s1 , ..., sk ) que funciona del siguiente modo: Si ek+1 = 1, entonces si = not(ei ) para todo i < k + 1 Si ek+1 = 0, entonces si = ei para todo i < k + 1 Ejemplo: inversor(0110)=011 inversor(1001)=011
Prctica 2 a
Prctica 2 a
Prctica 2 a
Ecuaciones para S1 , S2 y S3
s1 = (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 )
s2 = (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 )
s3 = (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 )
Prctica 2 a
Hay que usar (P.Q) + (P.Q) que es una XOR () P Q = (P.Q) + (P.Q)
Prctica 2 a
Comparemos con la ecuacin de S1 o (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) + (e1 .e2 .e3 .e4 ) e1 ((e2 .e3 .e4 ) + (e2 .e3 .e4 ) + (e2 .e3 .e4 ) + (e2 .e3 .e4 )) + e1 ((e2 .e3 .e4 ) + (e2 .e3 .e4 ) + (e2 .e3 .e4 ) + (e2 .e3 .e4 ) e1 (((e2 .e3 ) + (e2 .e3 ) + (e2 .e3 ) + (e2 .e3 ))e4 ) + e1 (((e2 .e3 ) + (e2 .e3 ) + (e2 .e3 ) + (e2 .e3 ))e4 ) e1 ((e2 (e3 + e3 ) + e2 (e3 + e3 ))e4 ) + e1 ((e2 (e3 + e3 ) + e2 (e3 + e3 ))e4 ) e1 ((e2 + e2 )e4 ) + e1 ((e2 + e2 )e4 ) (e1 .e4 ) + (e1 .e4 )
Prctica 2 a
Solucin: o
Prctica 2 a
Ejercicio 4
Armar un circuito de 3 bits. Este deber mover a izquierda o a a derecha los bits de entrada de acuerdo al valor de una de ellas que acta como control. En otras palabras, un shift izq-der de k-bits es u un circuito de k+1 entradas (ek , ..., e0 ) y k salidas (sk1 , ..., s0 ) que funciona del siguiente modo: Si ek = 1, entonces si = ei1 para todo 0 < i < k y s0 = 0 Si ek = 0, entonces si = ei+1 para todo 0 i < k 1 y sk1 = 0 Ejemplo: shift lr(1,011)=110 shift lr(0,011)=001 shift lr(1,100)=000 shift lr(1,101)=010
Prctica 2 a
Ejercicio 4
Solucin: o
Prctica 2 a
Ejercicio 5
Armar un sumador de un solo bit utilizando solo una compuerta AND y una compuerta XOR.
Prctica 2 a
Prctica 2 a
Prctica 2 a
Ejercicio 6
Teniendo dos sumadores simples y solo una compuerta a eleccin, o arme un sumador completo de un bit. (Recordar que un sumador completo tambin tiene entrada de e carry)
Prctica 2 a
X 0 0 0 0 1 1 1 1
Y 0 0 1 1 0 0 1 1
Cin 0 1 0 1 0 1 0 1
Sum 0 1 1 0 1 0 0 1
Cout 0 0 0 1 0 1 1 1
Prctica 2 a
Solucin: o
Prctica 2 a
Ejercicio 7
Usando sumadores completos y un tipo de compuerta a eleccin o armar un circuito que convierta un entero en su inverso aditivo (el inverso aditivo de un nmero n es el nmero x tal que x + n = 0). u u Los enteros se representan con notacin complemento a 2 de 4 o bits. En esta reprepresentacin el -8 no tiene inverso aditivo, no o hace falta contemplar el caso aparte. Ejemplo: inversoAd(1001)=0111 inversoAd(0110)=1010
(HINT: Para los que NO HICIERON el ejercicio 24 de la prctica 1, el a inverso aditivo de un nmero en complemento a 2 se obtiene invirtiendo u bit a bit y sumando 1)
Prctica 2 a
Solucin: o
Prctica 2 a
Prctica 2 a