シーケンサーに取り組んでいますが、一部の出力信号をインクリメントする方法がわかりません。状態 1 ( ) で(クロック サイクルごとにS1
) をインクリメントしたい。ram_add_wr
clocked_process:PROCESS(clk,rst)
VARIABLE count: INTEGER RANGE 0 TO 32;
BEGIN
IF (rst = '0') THEN
pr_state <= idle;
count := 0;
ELSIF (clk'event AND clk='1') THEN
count := count+1;
IF (count>=timer) THEN
pr_state <= nx_state;
count := 0;
END IF;
END IF;
END PROCESS;
PROCESS(pr_state, en)
BEGIN
CASE pr_state IS
WHEN idle =>
timer <= 1;
IF (en = '1') THEN
sig_ram_add_wr <= "00000";
nx_state <= s1;
ELSE
nx_state <= idle;
sig_ram_add_wr <= "00000";
END IF;
WHEN s1 =>
timer <= 32;
IF (en ='1') THEN
--timer <= 1;