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

Objetivos Introduccin o Ejercicios Resumen

Lgica Digital - Circuitos Combinatorios o


Expositor: Esteban Pontnau Primer Cuatrimestre de 2012
Departamento de Computacin, FCEyN,Universidad de Buenos Aires. o

3 de abril de 2012

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Objetivos de la clase de hoy

Repasar los operadores y propiedades del algebra de boole vistas en la terica y utilizarlas para implementar circuitos o combinatorios simples.

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Propiedades Suma de productos Producto de sumas Compuertas lgicas o

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

Objetivos Introduccin o Ejercicios Resumen

Propiedades Suma de productos Producto de sumas Compuertas lgicas o

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

Objetivos Introduccin o Ejercicios Resumen

Propiedades Suma de productos Producto de sumas Compuertas lgicas o

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

Objetivos Introduccin o Ejercicios Resumen

Propiedades Suma de productos Producto de sumas Compuertas lgicas o

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

F (A, B) = AB + AB (Es el operador OR-Excusivo o XOR)


Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Propiedades Suma de productos Producto de sumas Compuertas lgicas o

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

Objetivos Introduccin o Ejercicios Resumen

Propiedades Suma de productos Producto de sumas Compuertas lgicas o

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

Objetivos Introduccin o Ejercicios Resumen

Propiedades Suma de productos Producto de sumas Compuertas lgicas o

Compuerta NOT

A 0 1

NOT A 1 0

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Propiedades Suma de productos Producto de sumas Compuertas lgicas o

Compuerta AND

A 0 0 1 1

B 0 1 0 1

A AND B 0 0 0 1

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Propiedades Suma de productos Producto de sumas Compuertas lgicas o

Compuerta OR

A 0 0 1 1

B 0 1 0 1

A OR B 0 1 1 1

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Propiedades Suma de productos Producto de sumas Compuertas lgicas o

Compuerta XOR u OR-EXCLUSIVA

A 0 0 1 1

B 0 1 0 1

A XOR B 0 1 1 0

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Propiedades Suma de productos Producto de sumas Compuertas lgicas o

Compuerta NOR

A 0 0 1 1

B 0 1 0 1

A NOR B 1 0 0 0

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Propiedades Suma de productos Producto de sumas Compuertas lgicas o

Compuerta NAND

A 0 0 1 1

B 0 1 0 1

A NAND B 1 1 1 0

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Propiedades Suma de productos Producto de sumas Compuertas lgicas o

CEDAR Logic Simulator

http://cedarlogic.scienceontheweb.net/

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Ejercicio 1

Demostrar si la siguiente igualdad entre expresiones booleanas es verdadera o falsa: (X + Y ) = (X .Y ).Z + X .Z + (Y + Z )

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Recordemos las 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

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

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

Objetivos Introduccin o Ejercicios Resumen

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

Objetivos Introduccin o Ejercicios Resumen

Recordemos las 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

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

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

Objetivos Introduccin o Ejercicios Resumen

Para que nos sirvi esto? o


Implementacin de la primer expresin. o o

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Para que nos sirvi esto? o

Implementacin de la segunda expresin. o o

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

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

Objetivos Introduccin o Ejercicios Resumen

Solucin: Tabla de verdad o e1 0 0 0 0 1 1 1 1 (Continua) e2 0 0 1 1 0 0 1 1 e3 0 1 0 1 0 1 0 1 e4 0 0 0 0 0 0 0 0 s1 0 0 0 0 1 1 1 1 s2 0 0 1 1 0 0 1 1 s3 0 1 0 1 0 1 0 1

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Solucin: Tabla de verdad (Continuacin) o o e1 0 0 0 0 1 1 1 1 e2 0 0 1 1 0 0 1 1 e3 0 1 0 1 0 1 0 1 e4 1 1 1 1 1 1 1 1 s1 1 1 1 1 0 0 0 0 s2 1 1 0 0 1 1 0 0 s3 1 0 1 0 1 0 1 0

Cmo quedar las ecuaciones? o an

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

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

Objetivos Introduccin o Ejercicios Resumen

Primero pensar como invertir un solo bit ei 0 0 1 1 e(k+1) 0 1 0 1 si 0 1 1 0

Hay que usar (P.Q) + (P.Q) que es una XOR () P Q = (P.Q) + (P.Q)

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

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

Objetivos Introduccin o Ejercicios Resumen

Solucin: o

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

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

Objetivos Introduccin o Ejercicios Resumen

Ejercicio 4
Solucin: o

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Ejercicio 5

Armar un sumador de un solo bit utilizando solo una compuerta AND y una compuerta XOR.

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Solucin: o X 0 0 1 1 Y 0 1 0 1 Cout 0 0 0 1 Sum 0 1 1 0

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Solucin: o X 0 0 1 1 Y 0 1 0 1 Cout 0 0 0 1 Sum 0 1 1 0

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

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

Objetivos Introduccin o Ejercicios Resumen

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

Objetivos Introduccin o Ejercicios Resumen

Solucin: o

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

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

Objetivos Introduccin o Ejercicios Resumen

Solucin: o

(Pensar como ser la solucin usando sumadores simples.) a o

Prctica 2 a

Objetivos Introduccin o Ejercicios Resumen

Cosas que tendr amos que haber entendido y tips


Operadores y expresiones booleanas, reducciones utilizando propiedades. Dada una tabla de verdad escribir una expresin booleana que o la represente. Implementar las expresiones utilizando compuertas lgicas. o RECOMENDACIONES Sean cuidadosos cuando dibujan circuitos: Que quede claro cuando un cable esta conectado a otro y cuando lo saltea (pongan un circulito en la unin o una curva o cuando no quieren que lo toque). Con todo esto pueden hacer la primera parte de la prctica 2. a

Prctica 2 a

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