Examen Final Primavera 2011 (2) (2014)

Apunte Catalán
Universidad Universidad Politécnica de Cataluña (UPC)
Grado Ingeniería de Sistemas de Telecomunicación - 2º curso
Asignatura Disseny Digital
Año del apunte 2014
Páginas 1
Fecha de subida 08/04/2015
Descargas 0
Subido por

Vista previa del texto

Disseny Digital Control de pràctiques - 8 de juny de 2011 El fitxer VHDL descriu una màquina d’estats finits (FSM). Es demana que: a) (35%) Dibuixeu el seu diagrama d’estats equivalent.
b) (25%) Doneu una explicació d’alt nivell de la funció que realitza la FSM. Raoneu si és de tipus Moore o de tipus Mealy.
c) (40%) Escriviu la part de VHDL que modificaríeu per tal de convertir la FSM donada en una altra FSM del tipus Mealy que tingui menys estats i realitzi la mateixa funció.
library ieee; use ieee.std_logic_1164.all; entity prova3 is port( nrst, clk : in std_logic; ent : in std_logic_vector(3 downto 0); -- De 0 a F en HEXA sort : out std_logic ); end prova3; architecture arch of prova3 is type estats is (s0, s1, s2, s3, s4); signal estat : estats; begin process(clk,nrst) begin if nrst='0' then estat <= s0; elsif clk'event and clk='1' then case estat is when s0 => if ent=x"B" then estat<=s1; end if; when s1 => if ent=x"F" then estat<=s2; elsif ent=x"B" or ent=x"0" then estat<=s1; else estat<=s0; end if; when s2 => if ent=x"C" then estat<=s3; elsif ent=x"B" then estat<=s1; elsif ent=x"0" then estat<=s2; else estat<=s0; end if; when s3 => if ent=x"E" then estat<=s4; elsif ent=x"B" then estat<=s1; elsif ent=x"0" then estat<=s3; else estat<=s0; end if; when s4 => if ent=x"B" then estat<=s1; else estat<=s0; end if; end case; end if; end process; sort <= '1' when estat=s4 else '0'; end arch; ...