PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ ESTUDIOS GENERALES CIENCIAS DANIEL LLAMOCCA PRUEBA DE ENTRADA NOMBRE : _________________________________________ FECHA: ____/____/2005 LAB. Nº: 3 CÓDIGO : __________________________ H-441 HORARIO: 1. Complete el diagrama de tiempos del siguiente circuito (determine los valores de las señales ‘y’ y ‘f’). El valor ‘ ’ significa ‘desconocido’. (2 ptos.) y3 w 2 y2 E DECODER y1 3 w 2 E 1 y0 11 01 01 11 01 00 10 P3 0 S1 10 P2 S0 P1 P3 P2 P1 P0 CODIFICADOR x1 con prioridad x0 z al MSB P0 y f f 2. Haga el código VHDL de un Decodificador de 2 a 4 con habilitador, cuyas salidas se activan en baja. Debe usar obligatoriamente código secuencial. (2 ptos.) library ieee; use ieee.std_logic_1164.all; process ( begin ) entity dec24 is port ( hab: in std_logic; w: in std_logic_vector(1 downto 0); y: out std_logic_vector(3 downto 0) ); end dec24; architecture bhv of dec24 is begin end process; end bhv; 3. Establezca la veracidad o falsedad de los siguientes enunciados: (1 pto.) a) VHDL: Con la descripción concurrente pueden describirse sólo circuitos combinacionales. ( ) b) El C.I. 74138 tiene 1 habilitador activo en baja y 2 activos en alta. ( ) ( ) ( ) c) VHDL: Un pin de modo ‘out’ puede realimentarse al circuito. d) VHDL: Un codificador con prioridad no puede describirse con la sentencia ‘with-select’. IEE146 LABORATORIO DE CIRCUITOS DIGITALES 2005 - II PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ ESTUDIOS GENERALES CIENCIAS DANIEL LLAMOCCA PRUEBA DE ENTRADA NOMBRE : _________________________________________ FECHA: ____/____/2005 CÓDIGO : __________________________ LAB. Nº: 3 H-442 HORARIO: 1. Se muestra la figura de un MUX de 4 a 1. En base sólo a MUXs de 4 a 1 diseñe un multiplexor de 8 a 1 (2 ptos.) 0 1 2 3 2. Complete el diagrama de tiempos del circuito cuya descripción en VHDL se muestra (determine los valores de la señal ‘y’): (2 ptos.) library ieee; use ieee.std_logic_1164.all; begin entity circ is port ( E: in std_logic; w: in std_logic_vector(1 downto 0); y: out std_logic_vector(3 downto 0)); end circ; architecture a of circ is signal s: std_logic_vector(2 downto 0); s <= w&E; with s select y <= “1110” “1101” “1011” “0111” “1111” when when when when when “001”, “011”, “101”, “111”, others; end a; w1 w0 E y 3. Realice las conexiones necesarias en el siguiente decodificador 74138 para convertirlo en un DEMUX de 1 a 8. Indique las entradas y salidas (1 pto.) 74138 A B C G1 G2AN G3AN IEE146 Y0N Y1N Y2N Y3N Y4N Y5N Y6N Y7N LABORATORIO DE CIRCUITOS DIGITALES 2005 - II PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ ESTUDIOS GENERALES CIENCIAS DANIEL LLAMOCCA PRUEBA DE ENTRADA NOMBRE : _________________________________________ FECHA: ____/____/2005 LAB. Nº: 3 CÓDIGO : __________________________ H-443 HORARIO: 1. Haga el código VHDL de un MUX 4 a 1 con habilitador activo en baja. (2 ptos.) library ieee; use ieee.std_logic_1164.all; hab a 0 b y 1 c 2 d 3 2 s begin entity mux41 is port ( a, b, c, d: in std_logic; hab: in std_logic; s: in std_logic_vector(1 downto 0); y: out std_logic); end mux41; architecture est of mux41 is end est; 2. Complete el diagrama de tiempos del siguiente circuito (determine los valores de las señales ‘y’ y ‘f’). El valor ‘ ’ significa ‘desconocido’. (2 ptos.) y3 w 2 y2 E DECODER y1 0 w 1 E 2 y0 10 00 01 10 11 01 11 01 P3 3 P2 S1 S0 P1 P3 P2 P1 P0 CODIFICADOR x1 con prioridad x0 z al MSB P0 y f f 3. Establezca la veracidad o falsedad de los siguientes enunciados: (1 pto.) a) VHDL: La sentencia ‘when-else’ va dentro del bloque ‘PROCESS’. ( ) b) VHDL: El modo ‘buffer’ define un pin bidireccional. ( ) c) Un decodificador BCD a 7 segmentos puede describirse en VHDL con la sentencia ‘with-select’ ( ) d) Para que el C.I. 74151 funcione, se debe poner en alta (‘1’ lógico) a su señal de habilitación. ( ) IEE146 LABORATORIO DE CIRCUITOS DIGITALES 2005 - II PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ ESTUDIOS GENERALES CIENCIAS DANIEL LLAMOCCA PRUEBA DE ENTRADA NOMBRE : _________________________________________ FECHA: ____/____/2005 CÓDIGO : __________________________ LAB. Nº: 3 H-444 HORARIO: 1. Utilizando sólo un MUX de 4 a 1 implemente la función: f(a,b, c) = ∑ (3,5,7 ) . Muestre su desarrollo, así como todas las conexiones necesarias (2 ptos.) Desarrollo: 0 1 2 3 2. El código VHDL mostrado corresponde al bloque sombreado. Para el circuito total, complete el diagrama de tiempos para la señal ‘y’: (2 ptos.) DEMUX 3 a b c d s1 z1 ejm.vhd 2 1 0 y3 y2 4 y[3..0] y1 y0 s0 z0 library ieee; use ieee.std_logic_1164.all; entity ejm is port( b,c,d: in std_logic; z: out std_logic_vector(1 downto 0)); end ejm; Architecture bhv of ejm is begin process (b,c,d) begin z <= c&d; if b = ‘1’ then case d is when ‘1’ => z <= “01”; when others => z <= “00”; end case; else if c = ’0’ then z <= “11”; end if; end if; end process; end bhv; a b c Desconocido d y 3. Para un decodificador 2 a 4 con habilitador, complete el diagrama de tiempos para las señales ‘w1’ y ‘w0’ tal que la salida ‘y’ sea la mostrada. (1 pto.) w E 2 4 y w1 w0 DECODER Desconocido E y IEE146 1000 0000 0001 0010 0000 0000 0100 LABORATORIO DE CIRCUITOS DIGITALES 2005 - II PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ ESTUDIOS GENERALES CIENCIAS DANIEL LLAMOCCA PRUEBA DE ENTRADA NOMBRE : _________________________________________ FECHA: ____/____/2005 CÓDIGO : __________________________ LAB. Nº: 3 HORARIO: H-445 1. Complete el diagrama de tiempos del circuito cuya descripción en VHDL se muestra (determine los valores de las señales ‘y’ y ‘z’): (2 ptos.) library ieee; use ieee.std_logic_1164.all; entity circ is port ( w: in std_logic_vector(3 downto 0); y: out std_logic_vector(1 downto 0); z: out std_logic); end circ; architecture bhv of circ is w 0011 1011 1000 0111 0001 1100 0110 begin process (w) begin y <= “00”; z <= ‘1’; if w(3)=‘1’ then y <= “11”; end if; if w(2)=‘1’ then y <= “10”; end if; if w(1)=‘1’ then y <= “01”; end if; if w = “0000” then z <= ‘0’; end if; end process; end bhv; 1010 0000 1101 0100 1111 0010 1001 y z 2. Utilizando sólo MUXs de 2 a 1, implemente la función f(a,b, c) = ab + c (2 ptos.) 0 1 3. Responda adecuadamente: (1 pto.) a) Defina el modo de Dato ‘Buffer’ en VHDL: ______________________________ __________________________________________________________________ __________________________________________________________________ b) Enuncie 2 diferencias principales entre la Descripción Concurrente y la Descripción Comportamental (ó Secuencial): __________________________________________________________________ __________________________________________________________________ IEE146 LABORATORIO DE CIRCUITOS DIGITALES 2005 - II PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ ESTUDIOS GENERALES CIENCIAS DANIEL LLAMOCCA PRUEBA DE ENTRADA NOMBRE : _________________________________________ FECHA: ____/____/2005 CÓDIGO : __________________________ LAB. Nº: 3 HORARIO: H-446 1. Describa en VHDL un codificador 4 a 2, cuya prioridad se especifica en la siguiente figura y cuya salida ‘z’ se activa en baja. (2 ptos.) Library ieee; use ieee.std_logic_1164.all; y1 w3 w2 CODIFICADOR w1 w0 entity codif is port ( w: in std_logic_vector(2 downto 0); y: out std_logic_vector(1 downto 0); z: out std_logic); end codif; y0 z w 3 w 2 w 1 w 0 y1 y0 z 0 0 0 0 0 0 1 1 0 0 0 1 1 0 x 1 0 0 1 0 0 x x 1 0 0 1 0 x x x 1 0 0 0 architecture behaviour of codif is begin end behaviour; 2. Usando sólo MUXs de 2 a 1 implemente las compuertas XOR y XNOR. (2 ptos.) 0 1 3. Complete, utilizando la sentencia with-select, el código VHDL del circuito cuyo diagrama de tiempos se muestra. (1 pto.) library ieee; use ieee.std_logic_1164.all; e f g entity dcd is Desconocido port ( e, f, g: in std_logic; y: out std_logic); end dcd; architecture behaviour of dcd is begin y end behaviour; IEE146 LABORATORIO DE CIRCUITOS DIGITALES 2005 - II