digitales

848 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
848
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
20
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

digitales

  1. 1. ESCUELA SUPERIOR POLITECNICA DEL LITORAL FACULTAD DE INGENIERIA EN ELECTRICIDAD Y COMPUTACIÓN SISTEMAS DIGITALES II DEBER PARA SEGUNDA EVALUACIÓN I TÉRMINO 2012-2013PROBLEMA # 1Diseñe un pequeño Sistema Digital Detector de los dos números mayores de un grupo dehasta 32 datos.Inicialmente el sistema espera a que se active la señal Start. Luego pasa a un estado derecepción de números, en este estado se espera a que se reciba la señal Load, en esemomento el número binario de 5 bits presente en la entrada Data debe almacenarseinternamente para luego hacer las comparaciones necesarias. Luego de procesar el dato, elsistema no continuará hasta que la señal Load se desactive.Ahora el sistema debe esperar a que se active la señal Fin, que se haya cumplido el máximode 32 datos procesados o se pida cargar un nuevo dato. Si se activa Fin o si ya hay 32 datosprocesados el sistema va al estado de finalización, si no se cumple ninguna de las doscondiciones anteriores el sistema pregunta por una nueva activación de la entrada Load, siesto ocurre el sistema debe repetir el proceso de recepción y procesamiento de un nuevo dato.En el estado de finalización, el sistema debe mostrar en la salida Pmay de 5 bits, el promediode los dos números mayores (los dos más grandes) del total de los datos procesados yademás debe activar la salida Done. Estas salidas se siguen mostrando mientras la señalStart permanezca activa, luego de esto el sistema regresa al estado inicial.Nota: inicialmente los dos números mayores se consideran iguales a cero.Presentar: 1. Partición Funcional del Sistema Digital. 2. Diagrama ASM del circuito Controlador del Sistema Digital, indicando claramente todas las salidas que deben ser generadas.Deber # 2 de Sistemas Digitales II Página 1 de 19
  2. 2. PROBLEMA # 2Diseñe un pequeño Sistema Digital Clasificador de datos de encuestas personales.Inicialmente se espera por la señal Inicio que al ser verdadera envía al sistema a un estadode activación. Desde este estado el sistema espera a que la señal Cargar se active y luego sedesactive. Mientras esto ocurre, el valor presente en la entrada Data debe almacenarseinternamente. Después el sistema comienza la clasificación. La información del Dato sedescompone de la siguiente manera: Ahora el sistema deberá clasificar y contar si el dato actual pertenece a una o más de las siguientes categorías: 1. Casados mayores de 20 años sin instrucción 2. Mujeres menores de 18 años con al menos dos hijos 3. Divorciados con instrucción superior. El dato deberá ser contado y clasificado secuencialmente (categoría por categoría)Ahora el sistema preguntará si se activó la señal Fin que significa que se ha ingresado elúltimo dato, de no ser así preguntará si se activó nuevamente Cargar y por ende repetir elproceso para un nuevo dato.Cuando el proceso ha finalizado, el sistema deberá ahora mostrar en períodos consecutivosde reloj, en la salida Clase, el total de personas ingresadas que cumplieron las categorías 1, 2y 3 (una por una) respectivamente. Finalmente se debe activar la salida Terminado quepermanecerá encendida mientras Inicio continúe activado, luego el sistema debe volver alestado inicial del sistema (desactivación). Cuenta máxima : 63 personasPresentar: 3. Partición Funcional del Sistema Digital. 4. Diagrama ASM del circuito Controlador del Sistema Digital, indicando claramente todas las salidas que deben ser generadas.Deber # 2 de Sistemas Digitales II Página 2 de 19
  3. 3. PROBLEMA # 3Se muestran la Partición Funcional y el Diagrama ASM del circuito Controlador de unSistema Digital. 1. Partición FuncionalPresente: • Descripción del Sistema en un solo programa en VHDL usando las declaraciones process – case when para describir las Transiciones de Estados y las Salidas del Controlador, y la architecture mixta para la Partición Funcional. Asuma que Resetn del Controlador es asincrónico. Asuma que dispone de archivos .vhd en la misma carpeta de Trabajo para conv_dec_bcd, contador_down, contador_up y dec_dr_new que forman parte delDeber # 2 de Sistemas Digitales II Página 3 de 19
  4. 4. Sistema Digital. El circuito Controlador, sumadores, muxes, dec2a4 y las puertas lógicas deben ser descritos dentro de architecture. Así mismo suponga que el orden de las entradas y salidas en las declaraciones port de los subcircuitos es similar al del Diagrama Esquemático presentado. • Grafique los Diagrama de Tiempo del circuito Controlador asumiendo las condiciones de entrada dadas. Indique claramente los intervalos de tiempo que corresponden a cada estado (y). 2. Diagrama ASM Ta EnCb,LdCb, EnF1,EnF2, EnF3,LdF 0 Inicio Th Tb 1 Puerta Ld1 1 0 Final tecla 0 0 1 0 0 B1 B2 B3 En1 1 1 1 Tc En1 En2 En3 Ld1 En1 1 1 1 uno dos tres 1 tecla EnCb 0 0 0 Td 0 EnF1 EnF2 EnF3 Ld2 Ti Tj Tk 0 tecla 1 1 B1 1 B2 1 B3 En2 0 0 0 Te Ld2 Tl En2 1 tecla Tf 0 0 Ld3 Seguir EnCb 1 0 0 Cig3 tecla 1 1 En3 Tg Ld2 En3 1 tecla 0Deber # 2 de Sistemas Digitales II Página 4 de 19
  5. 5. 3. Diagrama de TiempoDeber # 2 de Sistemas Digitales II Página 5 de 19
  6. 6. PROBLEMA # 4Se muestran la Partición Funcional y el Diagrama ASM del circuito Controlador de unSistema Digital. 1. Partición FuncionalPresente: • Descripción del Sistema en un solo programa en VHDL usando las declaraciones process – case when para describir las Transiciones de Estados y las Salidas del Controlador, y la architecture mixta para la Partición Funcional. Asuma que Resetn del Controlador es asincrónico. Asuma que dispone de archivos .vhd en la misma carpeta de Trabajo para registro_sost, registro_sost10, conv_dec_bcd, contador_down, conv_2bcd_bin y conv_bin_3bcd_en que forman parte del Sistema Digital. El circuito Controlador, comparador, mux2a1, decoders4a16, sumadores y las puertas lógicas deben ser descritos dentro de architecture. Así mismo suponga que el orden de las entradas y salidas en las declaraciones port de los subcircuitos es similar al del Diagrama Esquemático presentado. • Grafique los Diagramas de Tiempo del circuito Controlador asumiendo las condiciones de entrada dadas. Indique claramente los intervalos de tiempo que corresponden a cada estado (y).Deber # 2 de Sistemas Digitales II Página 6 de 19
  7. 7. 2. Diagrama ASMDeber # 2 de Sistemas Digitales II Página 7 de 19
  8. 8. Resetn Ta EnC, LdC EnS 0 Start Tb 1 0 tecla 1 EnDe Tc EnDe 1 tecla Td 0 0 tecla 1 EnU Te EnU 1 0 tecla 1 Tf 0 Start sel Th mostrar, Fin div 0 1 0 diez 1 EnC, EnS 0 Tg 1 TerminarDeber # 2 de Sistemas Digitales II Página 8 de 19
  9. 9. 3. Diagramas de TiempoDeber # 2 de Sistemas Digitales II Página 9 de 19
  10. 10. PROBLEMA # 5Diseñe un pequeño Sistema Digital Clasificador de Peso.Inicialmente el sistema espera la activación de la señal Start. Cuando esto ocurre quedaesperando a que se active la señal Paquete, que indica que hay un paquete presente, ahorael sistema debe leer (y almacenar) en la entrada Peso el valor en binario del peso en Kg delpaquete:Si el paquete pesa menos de 10Kg, se lo considera carga ligera, si el paquete pesa de 10Kghasta 20 Kg, se lo considera carga mediana, y si pesa más de 20 Kg se lo considera pesado.Luego de procesar la información y verificar que la señal paquete ya se desactivo, el sistemapregunta por si se han ingresado hasta 32 paquetes (lo máximo) o si se activa la señal Final.Si ambas condiciones son falsas, el sistema regresa a esperar por otro paquete.Si Final es verdadera o si se completaron los 32 paquetes, el sistema mostrará en tresdisplays de siete segmentos (una información a la vez) la cantidad de paquetes ligerosingresados, luego el total del Kg de carga ligera, luego la cantidad de paquetes medianos,luego el total en Kg de carga ligera, luego la cantidad de paquetes pesados y finalmente eltotal en Kg de carga pesada. Para dejar de mostrar una información y pasar a la siguiente sedebe presionar y soltar la entrada Continuar.Después de que se presiono y soltó Continuar por última vez (luego de mostrar los Kg depesados) el sistema debe regresar al estado inicial.Nota: Mientras se están ingresando y procesando los pesos, los tres displays deben estardesactivados.Presente: 1. Diagrama ASM del circuito Controlador debidamente documentada. ( indicar todos las entradas y salidas) 2. Partición FuncionalDeber # 2 de Sistemas Digitales II Página 10 de 19
  11. 11. PROBLEMA # 6Diseñe un Pequeño Sistema Digital Adivinador de números en un máximo de 5 intentos.Inicialmente el sistema espera que se active la señal Start, luego de lo cual debeautomáticamente generar y almacenar, uno por uno, tres números aleatorios entre 0 y 7 (Paraeste fin use la señal de reloj clock2, de alta frecuencia que no está sincronizada con el relojprincipal del sistema. Los números si pueden ser repetidos). Los números deben seralmacenados internamente y no serán mostrados.Luego el sistema debe activar la salida Ingresar, y quedar a la espera de que el jugadoringrese por el teclado decimal, uno por uno los tres números que cree son los generados(Ingresar se vuelve a activar antes de recibir cada número). Luego que el jugador hayaterminado de ingresar sus tres números, el sistema debe computar lo siguiente: 1. Cantidad de números correctos en la posición correcta 2. Cantidad de números correctos en posición correcta o incorrecta.Ahora el sistema debe mostrar en dos displays de siete segmentos los resultados de suscomputos. Ejemplo: Si los números generados son 5 7 3 • Si se ingresan: 5 3 2 los displays muestran 1 y 2 • Si se ingresan: 3 5 7 los displays muestran 0 y 3 • Si se ingresan: 0 5 7 los displays muestran 0 y 2Estos resultados se mantienen en los displays hasta que se active la señal Continuar. Ahorael sistema debe preguntar si el jugador ganó o si se agotaron los 5 intentos: • Si ganó (o se acabaron los 5 intentos), debe activar la salida triunfo (si no gano no activa ninguna salida), y seguir así mientras Start siga siendo verdadera luego de lo cual regresa al estado inicial para otro juego. • Si no ganó y aún no se acaban los 5 intentos debe ingresar tres nuevos números y probar nuevamente.Presente: 3. Diagrama ASM del circuito Controlador debidamente documentada. ( indicar todos las entradas y salidas) 4. Partición FuncionalDeber # 2 de Sistemas Digitales II Página 11 de 19
  12. 12. PROBLEMA # 7Dada la siguiente descripción en VHDL del funcionamiento de un Sistema Digital:Presentar: 1. Partición Funcional del Sistema Digital. 2. Diagrama ASM del circuito Controlador del Sistema Digital, indicando claramente todas las salidas que deben ser generadas. 3. Diagramas de Tiempo del circuito Controlador asumiendo las condiciones de entrada dadas. Indique claramente los nombres y la duración de cada estado (y).library ieee;use ieee.std_logic_1164.all;entity problema2_vhdl is port(Resetn, Clock, Inicio : in std_logic; Dato : in std_logic_vector(3 downto 0); Fin, Agitar, Llenar : out std_logic);end problema2_vhdl;architecture mixta of problema2_vhdl is type estado is (S1, S2, S3, S4, S5, S6); signal y : estado;component registro_sost port(Resetn, Clock : in std_logic; Entrada : in std_logic_vector(3 downto 0); En : in std_logic; Q : out std_logic_vector(3 downto 0));end component;component contador_down port(Clock, Ld, En : in std_logic; Ent : in std_logic_vector(3 downto 0); Q : out std_logic_vector(3 downto 0));end component;component contador_up port(Clock, Ld, En : in std_logic; Ent : in std_logic_vector(1 downto 0); Q : out std_logic_vector(1 downto 0));end component; signal En_A, En_B, En_C, En_D, LCM, ECM, LC, EC : std_logic; signal Cig3, CMig0, tiempo : std_logic; signal DtA, DtB, DtC, DtD, Dt, CM : std_logic_vector(3 downto 0); signal C, zero : std_logic_vector(1 downto 0);begin-- Circuito Controlador MSS_transiciones: process (Resetn, Clock) beginDeber # 2 de Sistemas Digitales II Página 12 de 19
  13. 13. if Resetn =0 then y <= S1; elsif (Clockevent and Clock = 1) then case y is when S1 => if Inicio =0 then y <= S1; else y <= S2; end if; when S2 => if Cig3 =0 then y <= S2; else y <= S3; end if; when S3 => y <= S4; when S4 => if CMig0 =0 then y <= S4; elsif Cig3 =1 then y <= S6; else y <= S5; end if; when S5 => y <= S4; when S6 => if Inicio =1 then y <= S6; else y <= S1; end if; end case; end if; end process; MSS_salidas: process (y, Cig3, C(1), CMig0) begin EC <=0; LC <=0; tiempo <=0; ECM <=0; LCM <=0; Agitar <=0; Llenar <=0; Fin <=0; case y is when S1 => EC <=1; LC <=1; when S2 => tiempo <=1; EC <=1; when S3 => ECM <=1; LCM <=1; when S4 => ECM <=1; if C(1)=1 then Agitar <=1; else Llenar <=1; end if; if CMig0 =1 and Cig3 =0 then EC <=1; end if; when S5 => ECM <=1; LCM <=1; when S6 => Fin <=1; end case; end process;-- Procesador de Datosreg0: registro_sost port map(Resetn, Clock, Dato, En_A, DtA);reg1: registro_sost port map(Resetn, Clock, Dato, En_B, DtB);reg2: registro_sost port map(Resetn, Clock, Dato, En_C, DtC);reg3: registro_sost port map(Resetn, Clock, Dato, En_D, DtD);zero <= "00";contador1: contador_down port map(Clock, LCM, ECM, Dt, CM);contador2: contador_up port map(Clock, LC, EC, zero, C);with C select Dt <= DtA when "11", DtB when "10", DtC when "01", DtD when others;Dec_2a4: process(C, tiempo)begin if tiempo =1 then case C is when "00"=> En_D <=1; when "01"=> En_C <=1; when "10"=> En_B <=1;Deber # 2 de Sistemas Digitales II Página 13 de 19
  14. 14. when others=> En_A <=1; end case; else En_A <=0; En_B <=0; En_C <=0; En_D <=0; end if;end process;CMig0 <=1 when CM = "0000" else 0;Cig3 <=1 when C = "11" else 0;end mixta;Deber # 2 de Sistemas Digitales II Página 14 de 19
  15. 15. PROBLEMA # 8Dada la siguiente descripción en VHDL del funcionamiento de un Sistema Digital:Presentar: 1. Partición Funcional del Sistema Digital. 2. Diagrama ASM del circuito Controlador del Sistema Digital, indicando claramente todas las salidas que deben ser generadas por Controlador. 3. Diagramas de Tiempo del circuito Controlador asumiendo las condiciones de entrada dadas. Indique claramente los nombres y la duración de cada estado (y).library ieee;use ieee.std_logic_1164.all;entity problema2 is port(Resetn,Clock,Start,Load,Ingresar,Fin : in std_logic; DataR,DataA : in std_logic_vector(6 downto 0); Datos : out std_logic_vector(6 downto 0); Acertados : out std_logic_vector(4 downto 0); Err : out std_logic);end problema2;architecture mixta of problema2 is component registro_i_d port(Resetn, Clock : in std_logic; En, Ld, R : in std_logic; Entpar : in std_logic_vector (6 downto 0); Q : buffer std_logic_vector (6 downto 0)); end component; component registro_sost port(Resetn,Clock,En : in std_logic; EntPar : in std_logic_vector (6 downto 0); Q : out std_logic_vector (6 downto 0)); end component; component registro_sost5 port(Resetn,Clock,En : in std_logic; EntPar : in std_logic_vector (4 downto 0); Q : out std_logic_vector (4 downto 0)); end component; component contador_up port(Resetn,Clock,En,Ld : in std_logic; Ent : in std_logic_vector (4 downto 0); Q : out std_logic_vector (4 downto 0)); end component; component contador_down port(Resetn,Clock,En,Ld : in std_logic; Ent : in std_logic_vector(4 downto 0); Q : out std_logic_vector(4 downto 0)); end component; component memRAM port(data : in std_logic_vector(6 downto 0); we : in std_logic; address : in std_logic_vector(4 downto 0); q : out std_logic_vector(6 downto 0)); end component;Deber # 2 de Sistemas Digitales II Página 15 de 19
  16. 16. type estado is (Ta,Tb,Tc,Td,Te,Tf,Tg,Th); signal y : estado; signal EnC,LdC,EnP,LdP,EnR,LdR,EnA,EnT : std_logic; signal mostrar1,mostrar2,Rmen100,Amen100,AmayR : std_logic; signal write,Cig0,PigT,dt : std_logic; signal R,A,mem,const100 : std_logic_vector (6 downto 0); signal P,T,cntd,zeros,unos : std_logic_vector (4 downto 0);begin-- ControladorMSS_transiciones: process(Resetn,Clock)begin if Resetn =0 then y <=Ta; elsif Clockevent and Clock =1 then case y is when Ta=> if Start =0 then y <=Ta; else y <=Tb; end if; when Tb=> if Rmen100 =0 then y <=Tb; else y <=Tc; end if; when Tc=> if Ingresar =0 then y <=Tc; else y <=Td; end if; when Td=> if Amen100 =0 then y <=Tc; else y <=Te; end if; when Te=> y <=Tf; when Tf=> if Fin =1 then y <=Tg; elsif Cig0 =1 then y <=Tg; else y <=Tb; end if; when Tg=> y <=Th; when Th=> if PigT =0 then y <=Th; else y <=Ta; end if; end case; end if;end process;MSS_salidas: process(y,Load,Rmen100,Ingresar,Amen100,AmayR,Cig0,Fin,PigT)beginEnC <=0; LdC <=0; EnP <=0; LdP <=0; EnR <=0; LdR <=0; EnA <=0;EnT <=0; Err <=0; write <=0; mostrar1 <=0; mostrar2 <=0; case y is when Ta=> EnC <=1; LdC <=1; EnP <=1; LdP <=1; if Start =0 and Load =1 then EnR <=1; LdR <=1; end if; when Tb=> if Rmen100 =0 then EnR <=1; end if; when Tc=> if Ingresar =1 then EnA <=1; end if; when Td=> if Amen100 =0 then Err <=1; end if; when Te=> if AmayR =1 then write <=1; EnP <=1; end if; when Tf=> if Fin =1 then EnT <=1; elsif Cig0 =1 then EnT <=1; else EnC <=1; EnR <=1; end if; when Tg=> EnP <=1; LdP <=1; mostrar1 <=1; when Th=> mostrar2 <=1; if PigT =0 then EnP <=1; end if; end case;end process;-- Procesador de Datoszeros <="00000"; unos <="11111"; const100 <="1100100";reg1: registro_i_d port map(Resetn,Clock,EnR,LdR,dt,DataR,R);reg2: registro_sost port map(Resetn,Clock,EnA,DataA,A);reg3: registro_sost5 port map(Resetn,Clock,EnT,P,T);memoria: memRAM port map(R,write,P,mem);cnt1: contador_up port map(Resetn,Clock,EnP,LdP,zeros,P);cnt2: contador_down port map(Resetn,Clock,EnC,LdC,unos,cntd);Deber # 2 de Sistemas Digitales II Página 16 de 19
  17. 17. dt <= R(0) xor R(4);Cig0 <=1 when cntd ="00000" else 0;Rmen100 <=1 when R < const100 else 0;Amen100 <=1 when A < const100 else 0;AmayR <=1 when A > R else 0;PigT <=1 when P = T else 0;Acertados <= T when mostrar1 =1 else "ZZZZZ";Datos <= mem when mostrar2 =1 else "ZZZZZZZ";end mixta;Deber # 2 de Sistemas Digitales II Página 17 de 19
  18. 18. PROBLEMA # 9Diseñe en modo Fundamental una MSA que funciona cono un nuevo Flip-flop especial “M”que tiene dos entrada M y CLK y una salida Q.El Flip-flop M trabaja con flancos de subida de CLK de la siguiente manera: Si M es igual a “0”, la salida Q tiene valor “1”. Si M es igual a “1”, la salida Q invierte su valor presente.Presente: 1. Diagrama de Estados Primitivo (Formato: CLK M /Q). Tabla de Estados Primitivo.Tabla de Implicantes. Diagrama de Equivalencia máxima. 2. Diagrama de Estados Reducida. Mapa de asignación de Código de Estados. 3. Mapa de Excitación. Mapas y las expresiones para Y1 y Y0 y para la salida Q. Indica si su circuito corre riesgo de tener los Hazard Estáticos o no. ¿Como se puede evitar? 4. Diagramas de tiempo para las salidas asumiendo valores de las entradas y dados. Indica claramente los periodos de tiempo correspondiente a cada estado de su Diagrama de Estados Reducido.Deber # 2 de Sistemas Digitales II Página 18 de 19
  19. 19. PROBLEMA # 10Diseñe una MSA (Maquina Secuencial Asincrónica), en modo fundamental, que puede activaruna compuerta electrónica.La MSA tiene dos entradas X1 y X2 y una salida Cmp. Inicialmente las entradas X1, X2 son iguales a0 y la compuerta esta desactivada (Cmp = 0).Para activar la compuerta solo se requiere presionar X1 (con X2 desactivada). Si se presiona primeroX2 o si se presionan ambas (primero X2 y luego X1), la compuerta sigue desactivada.Una vez que la compuerta esta activada, para desactivarla primero se debe soltar X1 y luego se debepresionar únicamente X2, solo en ese momento se desactiva la compuerta.Si luego de haber soltado X1 se vuelve a presionar X1 o si se presionan ambas (primero X1 y luegoX2), la compuerta permanece activada. X1 MSA Cmp X2Presentar: 1. Diagrama de Estados Primitivo (Formato: X1 X2 / Cmp). Tabla de Estados Primitivo.Tabla de Implicantes. Diagrama de Equivalencia máxima. 2. Diagrama de Estados Reducida. Mapa de asignación de Código de Estados. 3. Mapa de Excitación. Mapas y las expresiones para Y1 y Y0 y para la salida Cmp. 4. Diagramas de tiempo para la salida Cmp asumiendo valores de las entradas X1 y X2 dados. Indique claramente los periodos de tiempo correspondiente a cada estado de su Diagrama de Estados Reducido. 5. Indica si su circuito corre riesgo de tener los Hazard Estáticos o no. ¿Como se puede evitar?Deber # 2 de Sistemas Digitales II Página 19 de 19

×