Ho un problema che mi assilla e non riesco a risolvere. Ho descritto una macchina a stati in questo modo:
Codice: Seleziona tutto
LIBRARY ieee;
USE ieee.std_logic_1164.all;
USE ieee.numeric_std.all;
ENTITY sequence_2proc_fsm IS
PORT( w : IN std_logic;
clk, rstn : IN std_logic;
state :OUT std_logic_vector(8 downto 0);
z : OUT std_logic);
END sequence_2proc_fsm;
ARCHITECTURE behavioural OF sequence_2proc_fsm IS
TYPE state_type IS (A,B,C,D,E,F,G,H,I);
SIGNAL ps, ns : state_type; -- ps: present state, ns= next state
BEGIN
state_process: PROCESS(w, ps)
BEGIN
CASE ps IS
WHEN A => IF w = '0' THEN ns <= B;
ELSE ns <= F;
END IF;
WHEN B => IF w = '0' THEN ns <= C;
ELSE ns <= F;
END IF;
WHEN C => IF w = '0' THEN ns <= D;
ELSE ns <= F;
END IF;
WHEN D => IF w = '0' THEN ns <= E;
ELSE ns <= F;
END IF;
WHEN E => IF w = '0' THEN ns <= E;
ELSE ns <= F;
END IF;
WHEN F => IF w = '0' THEN ns <= B;
ELSE ns <= G;
END IF;
WHEN G => IF w = '0' THEN ns <= B;
ELSE ns <= H;
END IF;
WHEN H => IF w = '0' THEN ns <= B;
ELSE ns <= I;
END IF;
WHEN I => IF w = '0' THEN ns <= B;
ELSE ns <= I;
END IF;
WHEN OTHERS => ns <= A;
END CASE;
END PROCESS;
state_update: PROCESS(clk)
BEGIN
IF clk'EVENT AND clk = '1' THEN
IF rstn = '0' THEN
ps <= A;
ELSE
ps <= ns;
END IF;
END IF;
END PROCESS;
z <= '1' WHEN ps = E OR ps = I ELSE '0';
state <= ps; -- conversione??? state è di tipo std_logic_vector
END behavioural;Avrei bisogno di portare in uscita il present state codificato su std_logic_vector. Esiste una funzione di conversione che lo faccia? Altrimenti è possibile estrarre in qualche modo dalla macchina a stati il signal in ingresso ai vari flip flop che la compongono?
Grazie, buon weekend a tutti

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)



lectroYou