ESCUELA SUPERIOR POLITECNICA DEL LITORAL FACULTAD DE INGENIERIA EN ELECTRICIDAD Y COMPUTACIÓN SISTEMAS DIGITALES I SEGU
Views 381 Downloads 35 File size 5MB
ESCUELA SUPERIOR POLITECNICA DEL LITORAL FACULTAD DE INGENIERIA EN ELECTRICIDAD Y COMPUTACIÓN
SISTEMAS DIGITALES I SEGUNDA EVALUACIÓN N
II TÉRMINO 2010-2011
2 de Febrero del 2011
NOMBRE : ____________________ ___________________________________________
PARALELO : __
PROBLEMA # 1 (24 p) A continuación se muestra la implementación de un circuito digital diseñado con componentes MSI y puertas adicionales
VHD del subcircuito MUX74157 mostrado. (5p) ( a) Escriba el código VHDL b) Suponga que en una carpeta de trabajo dispone de los programas MUX74153.VHD y REG74194.VHD,, que contienen la descripción VHDL de los correspondientes elementos mostrados. Cree en VHDL un paquete llamado COMPONENTES que incluya los dos circuitos indicados más el MUX descrito en el literal anterior. Para declarar entradas y salidas, asuma un orden de señales similar al mostrado en el gráfico, esto es: entradas desde la izquierda y de arriba hacia abajo y salidas a la derecha. derecha. (5p) c) Usando el paquete anterior y las descripciones RTL y ESTRUCTURAL (o lógica), escriba un programa en VHDL para implementar completamente el circuito mostrado. Note que no dispone de subcomponentes para las puertas lógicas básicas (14p).
1
PROBLEMA # 2 (24 p) Realice el diseño modular de una lavadora de ropa de un solo ciclo. El diagrama general es el siguiente:
La máquina tiene un tanque en donde se coloca la ropa, el cual tiene 4 sensores de nivel de agua: N4, N3, N2, N1, los cuales marcan la altura del agua dentro del recipiente, desde tanque lleno hasta nivel bajo o inclusive si está vacio (N4=N3=N2=N1=0). La información de los niveles de agua ingresa a un codificador con prioridad, que entrega en C (de 3 bits) el valor binario del nivel de agua. La lavadora tiene además un teclado para ingresar el nivel de agua deseado en el interior del tanque. Este tiene 4 botones y envía la señal ND de 4 bits. También ingresa la señal Inicio.H que cuando es alta permite que la operación de la lavadora se inicie, caso contrario (Inicio.H=L) la lavadora permanece inactiva. Existe una entrada Clock.H que es un tren de pulsos con un período de un minuto. Tenemos además la señal de salida Válvula.H que cuando se activa enciende una válvula permitiendo el ingreso de agua al tanque. Otra señal de salida es Bomba.H que cuando es alta prende una Bomba que drena el agua del tanque. La máquina posee un Display de 2 dígitos que muestra el tiempo restante de lavado. Además tiene 2 salidas: VelBaja.H y VelAlta.H Estas señanes comandan la velocidad de un motor que hace girar el tanque y la ropa a dos velocidades distintas: Alta velocidad y baja velocidad. La lavadora funciona según las siguientes especificaciones: • Por teclado se indica el nivel de agua deseado dependiendo de la cantidad de ropa colocada en el tanque. El lavado empieza con la señal Inicio.H activada, lo cual prende la Válvula. • Luego de que el tanque se llena de agua hasta el nivel deseado la válvula se apaga y se activa VelBaja.H por 12 minutos. • Después se activa VelAlta.H por 3 minutos y al mismo tiempo se prende la Bomba para desalojar el agua del tanque, dejando la ropa exprimida. • Note que el ciclo total de lavado (después de llegar al nivel) dura 15 minutos. Durante todo el ciclo de lavado en los 2 displays se muestra el tiempo que falta para completar los 15 minutos. Presentar: a) El diagrama de bloques de la lavadora de ropa, mostrando claramente la función que realiza cada bloque y el diseño del codificador con prioridad. (9p) b) La implementación completa del circuito, utilizando circuitos integrados MSI y puertas adicionales. Indique claramente las conexiones, nombre de las señales y de los integrados usados (no trabajar con buses de datos). (15p) Nota: Asuma que tiene disponible un Contador UP binario de 4 bits con entradas de CLK, CLR y Habilitación.
2
PROBLEMA # 3 (22 p) Diseñe un Contador Down (decremental) con control de carga y conteo.
En la figura se muestra la secuencia de conteo requerida. Si se activa la señal CLR (CLR.L=L) la salida debe ser 0 (000). En flancos positivos de reloj, el contador debe operar de la siguiente manera: • Si la señal En.H = L, en la salida se debe mantener el último valor del contador • Si la señal En.H = H y Ld.H=H, en la salida se debe cargar el valor inicial 7 (111). • Si la señal En.H = H y Ld.H=L, debe continuar el conteo normal. Presente: a) Diseño del Contador Down usando registro universal 74194, puertas lógicas y circuitos MSI adicionales (de ser necesario). (12p) b) Programa en VHDL del Contador Down usando la descripción comportamental o algorítmica. (10p)
3
ESCUELA SUPERIOR POLITECNICA DEL LITORAL FACULTAD DE INGENIERIA EN ELECTRICIDAD Y COMPUTACION SISTEMAS DIGITALES
I
EXAMEN DE SEGUNDA EVALUACION
NOMBRE
PARATELO
FECHA
PROBLEMA#1(25puntos) Realice el diseño modular de una unidad aritmética y lógica (ALU) que efectúe las siguientes operaciones:
CODIGO DE LA OPERACIÓN
OPERACION
PR 00
F
01
l0 tl
(X-Y)*u.o (x+Y)NBCD ( Y*2) *".o ( x/2 ) xs3
entradas XyYson números binarios de4 bits. Las entradas P y R son controles de la ALU que seleccionan la operación que se realizará. La salida F se presentará en varios displays. La entrada EN'L es de habilitación, por lo que cuando EN.L=L la ALU funciona y se muestra la información de F Las
en los display. cuando EN.L =H en los display se muestra todo en cero.
EN.L
(X)' (Y)z
Presentar:
5
a) El diagrama de bloques de la ALU, mostrando claramente
?-O b)
la función que realiza cada
bloque. La implementación completa del circuito, utilizando circuitos integrados MSI y puertas adicionales. lndique claramente las conexiones, nombre de las señales y de los integrados usados.
PROBLEMA #2:
A continuación se muestra la implementación de un Circuito Digital diseñado con componentes MSI y puertas adicionales:
4J
ll${
BY
g1
'
H
:1i
*Ls .F
&liiL-lFL:.€R
f,.
t; 8.2
¿?
,.a;
nu
RSti¡
8X
B[¿
S
fl4
,
4arA!flÉl
:
ANA
tla
* B:: Á3 ñ1
tlt1ú
ot¡¡ 5l-11,J:
It'i¡
sLlH¿
efi:l
Col"l
*jl 88f tJ
ri,4
I I
a)
Presente el código en VHDL del sub-circuito "MULTIPLEXOT 2 a l-" mostrado. Sabiendo que si S=0, la salida "Y" es igual a " A" v si S=1, la salida "Y" es igual a
b)
"8".
Considere que en una carpeta de trabajo con su nombre dispone de los programas "4_B|T_ADDER.VHD",'COMPARADOR.VHD",
"BINARY_BCD.VHD" y "BCD_TO_7_SEG.VHD"
que incluyen la descripción de VHDL de los respectivos circuitos mostrados. Cree en VHDL un paquete llamado "MlSClRCUITOS" que incluya los circuitos indicados mas el multiplexor del literal anterior. Para declarar las entradas y salidas, asuma un orden de señales similar al mostrado en el gráfico, esto es: Entradas a la izquierda comenzando de arriba hacia
?
c)
oH¡ ilt¿t
abajo y salidas a la derecha, ordenadas de arriba hacia abajo. Usando el paquete implementado en el literal anterior, escriba la descripción en VHDL (Estructural/Lógica) del
ci
rcuito completo.
S,iiÉ; RA: D lDn
(-
[¡a
t6ríGt'GS
ro.t=
\uo cion
/ Q*rueHn
*r
D
IT>F! ')-P[:_] rñ
q/
l-+ --r '\ Y , -7.,
1..
!.roerbr
bY
[,,
{-t.rt,*,,",
/l
,,:,
0,,.r*ror
Ll,
,á
o
&
L
/1
0lo r\ vlit
Q'*";
l) ;-, L-
d
A
.J-
{L
t
¿)
é
t-)
i!
» t-L!"-
*Q
,tl
o
U
tr
1'
lr't
S¿t
\*l
= cLK.I-T §o'+'H Ao+CLK-L+ H
h ü
nlj \
Íl-r
.
1-¡
{;
0
ull**tt-' ¡id c-"'-
tJ ?
n
c,
+ o
d í,
A
l)
o
\
tl
¡lt
ú
¿
v
i1
Curc
tp
ii
§^
@eBln¡naa
-"-' §
Flio
t+H
.f
§.-.
v'
'¿
e\
ry
I (.L.
JK
§n-r
úl
§rt .)
-l ¡l
^
t}o c>t IO 4lt
rt¡
1_E
is'lL
L_.¡*. fu^1.
üc) O1 JC)
ot9 ot Jo
GLrl
{J
ÓK
o
GD
i-fr
J
io trÓ
,/
,0L óo
o 7
IJ l)
_Llo
1,ó
C)
{9
é
11
d
trñ
o -: \-i
\)
oé
'tt
c? n V4 _1 t
AD
ú
-ltUU óe D.:eñr> ir 't\, V
JI
L l i_fr_ qé
J}
J1
'.'-
JK
1)
J*
\l
JJ-
t\i, - fipp o:
r
J
_l
t-r
o o
é o_
-7-
L O
t./
ó
o
-i-
6
€
tl
i\
?
o
J
,ó
i{= L'
ó
a é ü t{:
.',
@
o
,{ \fi
lt
U
H
Flip Er-e tu-tt \L
Ll
I
,,
t{
J--
-
li
ít: D
*
ESCUELA SUPERIOR POLITECNICA DEL LITORAL FACULTAD DE INGENIERIA EN ELECTRICIDAD Y COMPUTACION SISTEMAS DIGITALES I EXAMEN DE SEGUNDA EVALUACION NOMBRE
PARALELO
FECHA
PROBLEMA # 1 (24 puntos): Diseñe un circuito digital, para convertir dos números Binarios. Este circuito tiene dos entradas en binario P y T de 3 bits cada una, y la salida F, la cual presentará un nuevo código según las condiciones siguientes: Si (P)2 > (T)2 F = (P - T) en código XS3 Si (P)2 = (T)2 F = (P / 2) en código NBCD Si (P)2 < (T)2 F = (P + T) en código BINARIO 3
(P)2
Circuito
(T)2
Digital 3
F
Presentar: La implementación de cada bloque, utilizando circuitos integrados LSI, MSI y puertas adicionales. Indique claramente las conexiones, nombre de las señales y de los integrados usados.
PROBLEMA #2 (23 puntos): A continuación se muestra la implementación de un Circuito Digital diseñado con componentes MSI y puertas adicionales:
a) Presente el código en VHDL del circuito “ENCODER_16a4” mostrado. (8 puntos) b) Considere que en una carpeta de trabajo con su nombre dispone de los programas “BINARY_BCD.VHD” y “BCD_TO_7SEG.VHD” que incluyen la descripción de VHDL de los respectivos circuitos mostrados. Cree en VHDL un paquete llamado “MISCIRCUITOS” que incluya los circuitos indicados más el CI del literal “a”. (7 puntos) c) Usando el paquete implementado en el literal anterior, escriba la descripción en VHDL (Estructural/Lógica) del circuito completo. (8 puntos)
PROBLEMA #3 (23 puntos): Diseñar e implementar un circuito secuencial sincrónico, que opere como un contador UTILIZANDO el registro universal 74194. El circuito digital recibe una señal de reloj CLK y la señal de borrado CLR y tiene TRES salidas, Y2, Y1 y Y0 (LSB) de lógica positiva. La secuencia de conteo es: Y2 Y1 Y0 0 0 0 1 0 1
0 0 1 1 1 0
0 1 1 1 0 0
CLK.H CLR.L
CIRCUITO CONTADOR
Y2 Y1 Y0
Presentar la implementación del circuito contador utilizando compuertas y/o integrados adicionales. Muestre las tablas de verdad, indique los nombres de los integrados utilizados, y los nombres de las señales.
tfot-6s
rG
O
,
w il
4
L
#
L
DA _ q\ratua cion
rÉ\ +b
\1
iu,;
I
P)T :)
T: LT e(. &.
P=T + lT á'
Ftrlz en.bino'to F= P+'T oc' r¡Bc-D
?
0§
t)
dl
s-{
\r-
?