Bonjour à tous
voilà j'essaie de réaliser la machine d'états suivante en vhdl :
Capture.PNGCapture.PNG
voilà mon code VHDL :
cependant quand je mets "state machine Viewer" ça m'affiche ça :Code:Library ieee; USE ieee.std_logic_1164.all; Entity exemple is port( --Inputs E : in std_logic; clk, reset : in std_logic; Sout : out std_logic); end exemple; Architecture MyExemple of exemple is type state is (Q0, Q1, Q2); signal etat, etat_f : state; Begin P1 : process(clk, reset) -- Registre begin if(reset = '1') then etat <= Q0; elsif(rising_edge(clk)) then etat <= etat_f; end if; end process P1; P2 : process(etat) -- Description des sorties begin if(etat = Q0) then Sout <= '0'; elsif(etat = Q1) then Sout <= '1'; else Sout <= '0'; end if; end process P2; P3 : process(etat, E) -- Circuit d'excitation begin case(etat) is When Q0 => if (E = '0') then etat_f <= Q1; else etat_f <= Q2; end if; When Q1 => if (E = '1') then etat_f <= Q2; else etat_f <= etat; end if; When Q2 => if (E = '0') then etat_f <= Q1; else etat_f <= etat; end if; When others => etat_f <= Q0; end case; end process P3; end MyExemple;
Capture1.PNG
Si quelqu'un a une solution je suis preneur car franchement je ne vois pas du tout.
Merci à vous.
-----