0

シーケンサーに取り組んでいますが、一部の出力信号をインクリメントする方法がわかりません。状態 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;
4

2 に答える 2