Documentos de Académico
Documentos de Profesional
Documentos de Cultura
El circuito debe tener una entrada serie Data y dos salidas BCD y Error.
BCD.H Data.H MSS Error.H
Clock
Resetn
El circuito debe muestrear la entrada Data por cuatro veces consecutivos asumiendo que el primer bit muestreado es el bit ms significativo (MSB). Si el cdigo muestreado corresponde al cdigo BCD, el circuito genera la seal de salida BCD y regresa al estado inicial. Pero, si el cdigo muestreado no corresponde al cdigo BCD, el circuito genera la seal Error en la salida y tambin regresa al estado inicial. Presentar: 1. Diagrama de Estados Primitivo. 2. Mapa de Estados Presentes y Siguientes Primitivo. 3. Diagrama de Estados Reducido.
2.
Est. Pr. a b c d e f g h i j k l m n o
In Data 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
3.
a 0/00 /00 d 0/00 /00 h /10 1/00 m /01 b 0/0 f /00 0/00 c 1/00 g 1/00
Clock
Resetn
1. Describe su Diagrama de Estados en cdigo VHDL utilizando la declaracin process y luego case when para la descripcin de los bloques de Memoria de Estados y de Decodificador de Estado Siguiente. Para la descripcin del Decodificador de Salida utiliza las declaraciones concurrentes condicionales.
2. Grafique los Diagramas de Tiempo de las seales de salida asumiendo el valor de la seal de entrada dado. Indique claramente el nombre de estado que corresponde a cada periodo de Clock.
Resolucin. 1. library ieee; use ieee.std_logic_1164.all; entity MSS is port (Resetn, Clock, Data OK, Fin end MSS;
architecture comportamiento of MSS is type estado is (a, b, c, d); signal y : estado; begin process (Resetn, Clock) begin if Resetn ='0' then y <= a; elsif (Clock'event and Clock ='1') then case y is when a => if Data ='0' then y <= c; else y <= b; end if; when b => y <= d; when c => y <= a; when d => if Data ='1' then y <= d; else y <=a; end if; end case; end if; end process; Fin <='1' when y = c else '0'; OK <='1' when y = d and Data ='1'else '0'; end comportamiento;
2.