Pr actica 3 - L ogica Digital
Organizaci on del Computador 1 1er. Cuatrimestre 2006
Algebra de Boole Ejercicio 1 Demostrar la equivalencia de las siguientes f ormulas booleanas: a) p = (p.q ) + (p.q ) b) x.z = (x + y ).(x + y ).(x + z )
Ejercicio 2 1 Sea p 2 q = (p.q ) + (p.q ). Demostrar si la siguiente propiedad de distributividad es verdadera o es falsa: x (y.z ) = (x y ).(x z )
Ejercicio 3 Recordemos que una f ormula del algebra de Boole es: A, B, C, . . . , una variable booleana, 1, la constante verdadero, 0, la constante falso, Si P y Q son funciones booleanas, entonces P + Q (P o Q), P.Q (P y Q) y P (la negaci on de P) son funciones booleanas. Se pueden expresar todas las funciones totales f : {0, 1} {0, 1} {0, 1} usando f ormulas del algebra de Boole? Justicar.
Ejercicio 4 Determinar la veracidad o falsedad de las siguientes armaciones: a) Sea p|3 q = p.q Alcanza con este operador para representar todas las funciones booleanas? b) Sea p 4 q = p + q Alcanza con este operador para representar todas las funciones booleanas?
1 Ej
7. Cap tulo 3 del L. Null & J. Lobur - Essentials Of Computer Organization And Architecture
2 Xor 3 Nand 4 Nor
Implementaci on de funciones booleanas Ejercicio 5 Mostrar c omo se puede construir la funci on booleana f (A, B ) = A.B a partir de 2 compuertas5 NAND.
Ejercicio 6 Dibujar un circuito que implemente la funci on booleana f (A, B, C ) = A.B.C usando 2 compuertas NOR y varias compuertas NOT.
Ejercicio 7 Dada la funci on booleana F denida a partir de la siguiente tabla de verdad, A 1 1 1 0 0 0 1 0 B 1 0 0 1 0 1 1 0 C 0 0 1 0 1 1 1 0 F (A, B, C ) 0 1 1 0 0 1 1 0
a) Escribir la suma de productos6 para la funci on F . Calcular la cantidad de compuertas que la implementaci on literal de la funci on requerir a. b) Se puede simplicar la expresi on usando propiedades del algebra booleana? Dibujar el circuito correspondiente utilizando la menor cantidad de compuertas que pueda.
Circuitos Combinatorios Ejercicio 8 Dibujar el diagrama l ogico de un demultiplexor de 2 l neas de control, 1 l nea de entrada y 4 l neas de salida. Este circuito dirige la u nica l nea de entrada a una de cuatro l neas de salida, dependiendo del estado de las dos l neas de control. c1 0 0 1 1 c0 0 1 0 1 si si = 0 si = 0 si = 0 si = 0
s0 s1 s2 s3
= e0 , = e0 , = e0 , = e0 ,
si si si si
i=0 i=1 i=2 i=3
las compuertas son de 1 o 2 entradas, a menos que se indique lo contrario suma de productos es una f ormula booleana de la forma c1 + c2 + . . . + cn , donde todo ci (llamado cl ausula) tiene la forma ci = l1 .l2 . . . . .lm y todo lk (llamado literal) es una variable booleana o la negaci on de una variable booleana.
6 Una
5 Todas
Ejercicio 9 a) Dibujar el diagrama l ogico de un codicador de 4 l neas de entrada (ei )y 2 l neas de salida (si ). Si u nicamente ei est a alta, las salidas deben representan el n umero i en notaci on sin signo. No est a denido cu al es el resultado si no se cumple que s olo una de las l neas de entrada tiene valor 1.
b) Dotar al circuito anterior de una salida adicional que indique si el estado del resultado es v alido o inv alido. (Ayuda: analizar las l neas de entrada del codicador).
Ejercicio 10 a) Dibujar con compuertas l ogicas el circuito de un decodicador de 2 l neas de entrada (ei )y 4 l neas de salida (si ), cuya tabla de verdad es la siguiente: e1 0 0 1 1 e0 0 1 0 1 s3 0 0 0 1 s2 0 0 1 0 s1 0 1 0 0 s0 1 0 0 0
b) Usando el circuito anterior, dibujar un demultiplexor de 1 l nea de entrada, 2 l neas de control y 4 l neas salidas. Las salidas que no se encuentren activas deber an leerse como 1. c) Reescribir por completo los dos circuitos anteriores utilizando solamente compuertas NAND.
Circuitos Aritm eticos Ejercicio 11 a) Dibujar el diagrama l ogico de un carry left shifter de 3 l neas de entrada (e2 , e1 , e0 ), 4 l neas de salida (s3 , s2 , s1 , s0 ) y 1 l nea de control (c0 ). El comportamiento de este shifter es el siguiente: si c0 = 0, si = ei para todo i < 3, s3 = 0 si c0 = 1, si+1 = ei para todo i > 0, s0 = 0 b) Si las l neas de entrada y de salida codican un n umero entero en notaci on sin signo, qu e signica matem aticamente el shift a la izquierda? Y a la derecha? c) Si las l neas codicasen un n umero entero en notaci on complemento a 2, el signicado matem atico es el mismo? C omo se adaptar a el circuito?
Ejercicio 12 a) Dise nar un full adder de 1 bit usando s olo compuertas NAND. La tabla de verdad del full adder es la siguiente: A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 carryin 0 1 0 1 0 1 0 1 suma 0 1 1 0 1 0 0 1 carryout 0 0 0 1 0 1 1 1
b) Suponiendo que todas las compuertas elementales tienen el mismo retardo (delay ) t, calcule el retardo total del circuito para producir todas sus se nales de salida.
Ejercicio 13 a) Dise nar un full adder de 4 bits combinando 4 full adders de 1 bit. b) Suponiendo que los enteros se codican con notaci on complemento a 2. Dise nar circuitos anexos que observen los siguientes ags : Negative: N = 1 la salida representa un n umero negativo Overow: V = 1 el resultado no es representable Carry: C = 1 la suma de la codicaci on binaria produjo acarreo Zero: Z = 1 el resultado representa el n umero 0 c) Se puede usar el mismo circuito para sumar n umeros enteros codicados en notaci on sin signo? d) C omo se podr a aprovechar este sumador para realizar restas tanto de n umeros codicados en notaci on complemento a 2 como en notaci on sin signo? e) Suponiendo que A y B son n umeros enteros, se desea comparar a los mismos observando los ags luego de realizar la operaci on A B . Dar para cada uno de los siguientes casos una expresi on booleana formada por los ags anteriores (N, V, C, Z) que permita saber si se cumple la condici on, tanto para el caso en que A y B est an codicados en notaci on complemento a 2 como para cuando lo est an en notaci on sin signo. condici on A<B AB A=B AB A>B complemento a 2 notaci on sin signo
Circuitos Secuenciales Ejercicio 14 a) Escribir el diagrama de tiempos para el siguiente circuito secuencial desde 0 ns hasta 65 ns, suponiendo un retardo de 15 ns para la compuerta NAND, un retardo de 5 ns para la compuerta NOT, e0 = 1 entre 0 ns y 65 ns, s0 = 0 entre 0 ns y 15 ns, y i0 = 0 entre 0 ns y 5 ns.
b) Podr a alcanzar s0 un valor estable en el punto anterior? Lo podr a alcanzar si el valor de la l nea e0 fuera 0 en lugar de 1? c) Completar la siguiente tabla de valores para las l neas del circuito, pero expresando el valor de estas l neas en funci on de valores iniciales gen ericos w, x, y, z . tiempo(ns) 00-05 05-10 10-15 15-20 20-25 25-30 30-35 35-40 40-45 45-50 50-55 55-60 60-65 s0 w y z i0 x e0 1 1 1 1 1 1 1 1 1 1 1 1 1
Ejercicio 15 7 Completar la tabla de verdad para el siguiente circuito secuencial con los valores estables de la salida. Indicar si para alguna conguraci on el circuito no es estable:
7 Ej
41. Cap tulo 3 del L. Null & J. Lobur - Essentials Of Computer Organization And Architecture
A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
X 0 1 0 1 0 1 0 1
Ejercicio 16 Se desea construir un circuito que controle una se nal de tr ansito. Para esto se cuenta con un clock de 100 Hz. Los tiempos de delay de las compuertas pueden considerarse despreciables. Este circuito debe responder al siguiente comportamiento salida s0 s1 s2 s3 0 sg 1 0 0 0 1 sg 0 1 0 0 2 sg 0 0 1 0 3 sg 0 0 0 1 4 sg 1 0 0 0 k sg ... ... ... ...