Está en la página 1de 8

UNIVERSIDAD NACIONAL TECNOLOGICA DE LIMA SUR

(UNTELS)

ING.ELECTRONICA Y TELECOMUNICACIONES

TEMA:
Solucin de los problemas del libro Diseo digital
CURSO:
Arquitectura del computador
PROFESOR:
Fredy Campos
CICLO:
VII
ALUMNO(A):
Melanie Mantilla

2015

Lima-PERU

SOLUCION:
3.30. Implemente esta expresin booleana con compuertas OR exclusivo y AND:

F=AB CD + A BCD + AB C D+ A BC D

3.31. Escriba en HDL la descripcin de estructura de compuertas del circuito de la


figura 3-22a).

// Descripcin del circuito simple de la figura 3.22


module circuito_smpl (A, B, C, D, E, F, x);
input
output

A, B, C, D, E, F;
x;

wire g, h, i, j;
nand U1, U2, U3, U4:A, U4:B;

endmodule

3.32. El circuito OR exclusivo de la figura 3-32a) tiene compuertas con retardo de


10 ns para los inversores, 20 ns para las compuertas AND y 30 ns para las
compuertas OR. La entrada del circuito pasa de xy=00 a xy=01.
a) Deduzca las seales en la salida de cada compuerta desde t=0 hasta t=50 ns.
b) Escriba la descripcin HDL del circuito, incluyendo los retardos.
c) Escriba un mdulo de estmulo (similar al ejemplo HDL 3-3) y simule el
circuito para verificar la respuesta de la parte a).

Solucion.
a)
W1

W3

W2

W4

Inicialmente, con xy=0, w1=w2=1, w3=w4=0 y F=0. w1 debera de cambiar a


0, 10ns despus de que xy cambie a 01. w4 debera de cambiar a 1, 20ns
despus de que xy cambie a 01. F debera de cambiar desde 0 a 1, 30ns
despus de que w4 cambie desde 0 a 1, entonces cambiara de xy=00 a xy=11
en 40ns.

b)
timescale 1ns/1ps
module Prob_3_32(output F, input x,y);
wire w1, w2, w3, w4;
and #20(w3, x, w1);
not #10(w1, x);
and #20(w4, y, w1);
not #10(w2, y);
or #30(F, w3, w4);
endmodule
module t_Prob_3_32 ();
reg x,y;
wire F;

Prob_3_32 M0 (F, x, y);


initial #200 $finish;
initial fork
x = 0;
y = 0;
#20 y = 1;
join
endmodule
d) Para simular el circuito, se est asumiendo que las entradas xy=00 se han
aplicado suficientemente largo para que el circuito sea estable antes que se
pase a xy=01. El testbench pone a xy=00 a un t= 0ns, y a xy=11 a t=30ns. El
simulador asume que xy=00 se ha aplicado por un corto tiempo para que el
circuito sea estable en el estado de t= 0ns, y mostrar F=0 como el valor de la
salida a t= 0ns. La forma de onda mostrada responde a xy=01 aplicado a t=

30ns.

3.33. Escriba

la descripcin HDL del circuito de la figura 3-37

empleando dos expresiones booleanas.

//Circuito especificado con expresiones booleanas


module circuit_3.33 (x,y,e);
input A, B, C;
output x, y;
assign x = (A & B) | ~C;
assign y = ~C;
endmodule

3.34. Escriba la descripcin HDL del circuito especificado por estas funciones
booleanas:

x= A ( CD+ B ) + B C

'

y=( A B' + A ' B ) ( C+ D )


'

z=[(A + B)(C + D' B)]'


Utilice enunciados de asignacin continua.
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity pru.01 is
Port (
A: in std_logic;
B: in std_logic;
C: in std_logic;
D: in std_logic;
S0: out std_logic;
S1: out std_logic;
S2: out std_logic
);
end pru.01;
architecture behavioral of pru.01 is
begin
S0<=((A and C and D) or (A and B) or (B and not(C)))
S1<=((A and not(B) and not(D)) or (not(A) and B and not(D)) or
(A and not(B) and C) or (not(A) and B and C))
S2<=((not(A) and not(B)) or (not(B) and C) or (C and D))
end behavioral;

3.35. Encuentre los errores de sintaxis en las declaraciones siguientes (tome


nota de que los nombres de las compuertas primitivas son opcionales):

module Exmpl-3 (A,B,C,D,F)


inputs A,B,C,
Output D,F;
and g1 (A,B,D);
not (D,B,A);
OR (F,B,C);
Endmodule;

LO CORRECTO ES:

module circt (A, B, C,D,F,)


input A,B,C;
output D,F;
and g1(F,B,A);
or g2( D,B,C);
endmodule
3.36. Dibuje el diagrama lgico del circuito digital especificado por esta descripcin
HDL:
module circt (A,B,C,D,F);
input A,B,C,D;
output F;
wire w,x,y,z,a,d;
and (x,B,C,d);
and (y,a,C);
and (w,z,B);
or (z,y,A);
or (F,x,w);
not (a,A);
not (d,D);
endmodule

3.37. Una funcin lgica de mayora es una funcin booleana que da 1 si la mayora
de las variables vale 1, y 0 en caso contrario. Escriba una primitiva definida por el
usuario en HDL. Para una funcin de mayora de 3 bits.

+ AB

00C

A\BC
0
1

S01

11

10

S = BC + AC

Esquema :
0
0

0
1

1
1

0
1

HDL
module circt (A, B, C, S);
input A, B, C;
output S;
wire w, x, y, z;
and (w, A, B);
and (x, B, C);
and (y, A, C);
or (z, x, y);
or(S, w, z);
endmodule

También podría gustarte