ic3 enunciado ejerc1 (2)

2
INGENIER ´ IA DE COMPUTADORES III Ejercicio de autocomprobaci´ on 1 INSTRUCCIONES: 1. Resuelva este ejercicio en las mismas condiciones en que realizar ´ a el examen: dos horas de tiempo y sin emplear ning´ un material. 2. Revise sus contestaciones, empleando para ello el texto y el simulador que est´ e usando para estudiar la asignatura. 3. Compare sus respuestas revisadas con la soluci´ on. Pregunta 1 (3 puntos) Escriba en VHDL la architecture que describe el comportamiento de un contador s´ ıncrono ascendente m´ odulo 4 en t´ erminos de una m´ aquina de Moore. La salida del contador toma ıclicamente los valores “00”, “01”, “10”, “11”. Si la cuenta est´ a habilitada, se obtiene un nuevo valor de la salida en cada flanco de subida de la se˜ nal de reloj. La entrada c habilita la cuenta cuando est´ a a ’1’ y la deshabilita cuando est´ a a ’0’. La entrada reset es una se˜ nal as´ ıncrona activa a nivel alto que pone la cuenta a “00”. La entity del contador se muestra a continuaci´ on. entity contador_Mod_4 is port( state : out std_logic_vector(1 downto 0); clock, reset, c : in std_logic); end entity contador_Mod_4; Pregunta 2 (3 puntos) Programe en VHDL el banco de pruebas del contador que ha dise˜ nado al resolver la Pregun- ta 1. El banco de pruebas debe comprobar el funcionamiento del circuito de forma exhaustiva. El banco de pruebas debe generar un conjunto de vectores de test, comprobar si la salida de la UUT es correcta, mostrar un mensaje cada vez que la salida de la UUT no sea correcta y mostrar un mensaje al finalizar el test indicando el n´ umero total de salidas incorrectas.

Upload: pedro-lp

Post on 26-Jul-2015

17 views

Category:

Internet


0 download

TRANSCRIPT

Page 1: Ic3 enunciado ejerc1 (2)

INGENIER IA DE COMPUTADORES III Ejercicio de autocomprobacion 1

INSTRUCCIONES:

1. Resuelva este ejercicio en las mismas condiciones en que realizara el examen: dos horasde tiempo y sin emplear ningun material.

2. Revise sus contestaciones, empleando para ello el texto y el simulador que este usandopara estudiar la asignatura.

3. Compare sus respuestas revisadas con la solucion.

Pregunta 1(3 puntos)

Escriba en VHDL laarchitecture que describe el comportamiento de un contador sıncronoascendente modulo 4 en terminos de una maquina de Moore. La salida del contador tomacıclicamente los valores “00”, “01”, “10”, “11”. Si la cuentaesta habilitada, se obtiene unnuevo valor de la salida en cada flanco de subida de la senal de reloj. La entradac habilitala cuenta cuando esta a ’1’ y la deshabilita cuando esta a ’0’. La entradareset es una senalasıncrona activa a nivel alto que pone la cuenta a “00”. Laentity del contador se muestra acontinuacion.

entity contador_Mod_4 is port(state : out std_logic_vector(1 downto 0);clock, reset, c : in std_logic);

end entity contador_Mod_4;

Pregunta 2(3 puntos)

Programe en VHDL el banco de pruebas del contador que ha disenado al resolver la Pregun-ta 1. El banco de pruebas debe comprobar el funcionamiento del circuito de forma exhaustiva.El banco de pruebas debe generar un conjunto de vectores de test, comprobar si la salida dela UUT es correcta, mostrar un mensaje cada vez que la salida de la UUT no sea correcta ymostrar un mensaje al finalizar el test indicando el numero total de salidas incorrectas.

Page 2: Ic3 enunciado ejerc1 (2)

Pregunta 3(2 puntos)

Escriba en VHDL laarchitecture que describa el comportamiento de un circuito combina-cional que realiza operaciones de desplazamiento sobre unaentrada de 4 bits. La entradade seleccion de operacion del circuito esop. Las senales de entrada y salida se llaman,respectivamente,entrada y salida. La tabla de operaciones y laentity del circuito son:

op Operacion0 0 Desplaza 1 bit a la izquierda rellenando con ’0’0 1 Desplaza 1 bit a la derecha rellenando con ’1’1 0 Rota 1 bit a la izquierda1 1 Rota 1 bit a la derecha

entity desplazador isport( salida : out std_logic_vector(3 downto 0);

op : in std_logic_vector(1 downto 0);entrada : in std_logic_vector(3 downto 0));

end entity desplazador;

Pregunta 4(2 puntos)

Escriba en VHDL laarchitecture del flip-flop D cuyo comportamiento se describe a conti-nuacion, empleando para ello una sentenciaif .

Ademas de la entrada de reloj (Clock), el flip-flop tiene otras cuatro senales de entrada:D,Enable, Set y Clear. El flip-flop tiene unaunica senal de salida, cuyo valor coincide entodo momento con el valor del estado del circuito (Q).

entity FFD isport( Q : out std_logic;

Clock, Enable, Set, Clear, D : in std_logic);end entity FFD;

Cuando la entrada asıncronaSet es puesta al valor ’1’, el estado del flip-flop cambia inme-diatamente al valor ’1’. Por el contrario, cuando la entradaasıncronaClear es puesta al valor’1’, el estado del flip-flop cambia inmediatamente al valor ’0’. La entradaSet ha de tenerprioridad sobre la entradaClear.

Si la senalEnable vale ’1’, entonces en el flanco de subida de la senal de reloj se asigna elvalor de la entradaD al estado del flip-flop (Q). Por el contrario, si la senalEnable vale ’0’,la carga del flip-flop desde la entradaD esta deshabilitada.