Está en la página 1de 8

Pr actica 2 - L ogica Digital

Organizaci on del Computador 1 Segundo cuatrimestre de 2012


Todas las compuertas mencionadas en esta pr actica son de 1 o 2 entradas, a menos que se indique lo contrario. Usaremos los s mbolos detallados a continuaci on para representar las distintas funciones l ogicas: XOR , NAND |, NOR

Circuitos Combinatorios
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 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 Determinar la veracidad o falsedad de las siguientes armaciones: a) Sea p|q = p.q Alcanza con este operador para representar todas las funciones booleanas? b) Sea p q = p + q Alcanza con este operador para representar todas las funciones booleanas? Ejercicio 4 Mostrar c omo se puede construir la funci on booleana f (A, B ) = A.B a partir de 2 compuertas NAND. Mostar adem as c omo construir la funci on f (A) = A utilizando u nicamente compuertas NAND. Ejercicio 5 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 6 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 productos para la funci on F . Calcular la cantidad de compuertas que la implementaci on literal de la funci on requerir a.
1

Ej 7. Cap tulo 3 del L. Null & J. Lobur - Essentials Of Computer Organization And Architecture

b) Se puede simplicar la expresi on usando propiedades del algebra booleana? Dibujar el circuito correspondiente utilizando la menor cantidad de compuertas que pueda. Ejercicio 7 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

Ejercicio 8 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 de la entrada es v alido o inv alido. Ejercicio 9 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, reescribir el demultiplexor de 1 l nea de entrada, 2 l neas de control y 4 l neas de salida. c) Reescribir por completo los dos circuitos anteriores utilizando solamente compuertas NAND. Ejercicio 10 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 0 i < 3, s3 = 0 si c0 = 1, si+1 = ei para todo 0 i < 3, s0 = 0 2

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 11 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 12 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 (complemento a 2) Overow: V = 1 el resultado no es representable (complemento a 2) 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) Modicar la se nal de Carry de tal modo que represente lo siguiente: Si la operaci on es suma: C = 1 la suma bit a bit produjo acarreo Si la operaci on es resta: C = 1 la resta bit a bit produjo borrow (dame uno) f) Para comparar dos n umeros A y B se realiza la operaci on A B . Indicar los valores de los ags que caracterizan las siguientes condiciones. condici on A<B AB A=B AB A>B complemento a 2 notaci on sin signo

Ejercicio 13 a) Dise nar un componente con 4 entradas e0 , . . . , e3 y 4 salidas s0 , . . . , s3 tal que cada salida si valga ei . b) Dise nar un componente con 4 entradas e0 , . . . , e3 y 4 salidas s0 , . . . , s3 que calcule el inverso aditivo del n umero codicado en complemento a 2 por la entrada. c) Modicar el circuito anterior para que en una nueva salida indique si el n umero de la entrada no tiene un inverso aditivo representable con 4 bits en complemento a 2.

Circuitos Secuenciales
Ejercicio 14 a) Escribir el diagrama temporal para el siguiente circuito secuencial desde 0 ns hasta 65 ns, suponiendo un retardo de 15 ns para la compuerta AND, un retardo de 5 ns para la compuerta NOT, en el tiempo 0 ns la se nal e0 cambia a 1, inicialmente en 0. las se nales i0 y s0 tienen valor 1 y 0 respectivamente en el tiempo 0 ns. suponer que los componentes empiezan a estabilizarse cuando sus se nales de entrada est an estables.

s0 i0

e0

b) Podr a alcanzar s0 un valor estable en el punto anterior? Y en el caso en que e0 fuera 0 en lugar de 1, se estabilizar a? Ejercicio 15 Asumiendo los mismos tiempos de retardo que en el ejercicio anterior, describa el comportamiento de los siguientes circuitos si la llave 1 se mantiene desconectada y la llave 2 se acciona por 15 ns y luego se vuelve a desactivar.

(1)

(2)

Ejercicio 16 Escriba tablas caracter sticas que especiquen el comportamiento de cada uno de los siguientes circuitos secuenciales:

(a)

(b)

(c) Ejercicio 17 Registro simple Dise nar un registro simple de cuatro bits. Este tipo de registros es un circuito de seis entradas (i0 a i3 , load, clk) y cuatro salidas i i i i clk load (o0 a o3 ), cuyo funcionamiento es el siguiente: cuando la se nal o o o o clk alcanza su rango ascendente, si load est a alta, almacena las se nales recibidas en i0 a i3 . Por las l neas de salida, se emite el valor almacenado en el registro.
3 2 1 0 3 2 1 0

Ejercicio 18 Extensor de signo Dise nar un registro extensor de signo de dos a cuatro bits. Del mismo modo que un registro simple (ver ejercicio 17) este circuito toma el valor de sus cuatro entradas i0 a i3 cuando su se nal clk atraviesa su anco ascendente si la entrada load vale 1. Por sus load i i i i clk ext l neas de salida (o0 a o3 ) se emite el valor almacenado si la se nal o o o o ext est a baja; por el contrario, si vale 1, se emite una representaci on de cuatro bits del n umero almacenado en los dos bits menos signicativos del registro, interpretados como un entero codicado en complemento a 2.
3 2 1 0 3 2 1 0

Ejercicio 19 Desplazador

clk

i3 o3

i2 o2

i1 o1

i0 o0

load shl

Dise nar un registro desplazador a izquierda de cuatro bits. Del mismo modo que un registro simple (ver ejercicio 17) este circuito toma el valor de sus cuatro entradas i0 a i3 cuando su se nal clk atraviesa su anco ascendente, si la entrada load vale 1. Por sus l neas de salida (o0 a o3 ) se emite el valor almacenado si la se nal shl est a baja; por el contrario, si vale 1, se emite ese valor desplazado en uno hacia la izquierda.

Ejercicio 20 Registro bidireccional Dise nar un registro bidireccional de cuatro bits. Este tipo de registros es un circuito con tres entradas (load, read, clk) y cuatro se nales de entrada y salida (d0 a d3 ), que funciona de la siguiente load d d d d clk manera: cuando la se nal clk alcanza su rango ascendente, si load read est a alta, almacena las se nales recibidas en d0 a d3 ; en cambio, si read est a alta, se emite el valor almacenado en el registro por esas mismas l neas.
3 2 1 0

Ayuda: utilice componentes de tres estados y asuma como precondici on que las se nales load y read no pueden estar altas simult aneamente. Ejercicio 21 Registro de salida restringida Dise nar un registro de salida restringida de cuatro bits. Este load tipo de registros es un circuito de siete entradas (i0 a i3 , load, clk i i i i clk read y read ) y cuatro salidas (o0 a o3 ), muy similar al registro simple o o o o (ejercicio 17) pero que s olo emite su salida por las l neas o0 a o3 si read est a alta cuando clk alcanza su anco ascendente. Ayuda: utilice componentes de tres estados y asuma como precondici on que las se nales load y read no pueden estar altas simult aneamente.
3 2 1 0 3 2 1 0

Ejercicio 22 Auto incrementador Dise nar un registro bi-direccional auto incrementador de cuatro bits. Este circuito funciona de la misma manera que un registro bi-direccional (ver ejercicio 20), pero tiene una l nea de entrada load d d d d clk read extra inc tal que si contiene una se nal alta cuando clk alcanza su inc anco ascendente, el valor almacenado por el registro se incrementa en uno.
3 2 1 0

Ejercicio 23 ALU Dise ne una ALU con las siguientes caracter sticas: cuatro se nales de entrada que indican la operaci on a realizar: add, sub, and, or; dos registros simples, donde se almacenan los operandos a utilizar; un registro de salida restringida, donde se almacena el resultado; cuatro ags cuyos valores son determinados por la u ltima operaci on realizada.

add sub and or

Ejercicio 24 La conjetura de Collatz, es un famoso problema matem atico a un no resuelto. Esta conjetura enuncia la siguiente funci on f : N N, aplicable a cualquier n umero entero positivo: n si n es par f (n) = 2 3n + 1 si n es impar Se dice que si se toma cualquier n umero y se aplica esta funci on reiteradas veces, el resultado siempre converge a 1. a) Construir un circuito combinatorio que realice la funci on f (n) para una entrada de 5 bits. b) Construir un circuito secuencial, que aplique reiteradas veces la funci on anterior por cada ciclo de reloj. 6

flags

c) Modicar el circuito anterior de forma que si el valor de entrada es 1, entonces la salida tambi en sea 1. Ejercicio 25 Dado el siguiente circuito y asumiendo que el registro contador comienza almacenando el valor 0000, indique mediante un diagrama de tiempos la secuencia de activaciones y desactivaciones de se nales de control necesarias para que el contador contenga los valores: 0, 1, 2, -1, 0, 1, 2, etc.

clk

load

extensor

ext

clk

Incrementador

load read inc

Ejercicio 26 Dado el siguiente circuito, indique mediante un diagrama de tiempos la secuencia de activaciones y desactivaciones de se nales de control necesarias para que el valor almacenado en el registro bidireccional (ejercicio 20) R0 se sume al valor del registro bidirecional R1 y el resultado se almacene en el registro R0.

R0

R1
add sub and or

flags

Apunte de componentes
Componentes de tres estados
Noci on el ectrica: A 0 1 x B 1 1 0 C 0 1 Hi-Z S mbolo:

B=0 A C A

B=1 C

Hi-Z signica alta impedancia, es decir, que tiene una resistencia alta al pasaje de corriente. Como consecuencia de esto, podemos considerar al pin C como desconectado del circuito.

Flip-op RS
S

Flip-op RS con clock


Q

S Q Clk

S 0 0 1 1

R 0 1 0 1

Q no cambia reset a cero set a uno indenido

S Clk

R S

Q
Q

Q R

Flip-Flop D
D 0 1 Q 0 1
D Clk S Clk R Q Q Q Q

Flip-Flop JK
J 0 0 1 1 K 0 1 0 1 Q(t + 1) Q(t) 0 1 Q(t)
J Clk K S Clk R Q Q Q Q

También podría gustarte