2016-05-08 15 views
0

VHDLのif構文に問題があります。 コードは次のようになります。VHDL IF文が機能しない

library IEEE; 
use IEEE.STD_LOGIC_1164.ALL; 

entity Shifting_zero is 
    port (clk : in STD_LOGIC; 
      zeros : buffer STD_LOGIC_VECTOR (3 downto 0)); 
end Shifting_zero; 

architecture Behavioral of Shifting_zero is 
begin 

process 
    begin 
     if (clk'event and clk='1') then 
      if (zeros='0111') then 
       zeros <= '1011'; 
      elsif (zeros='1011') then 
       zeros <= '1101'; 
      elsif (zeros-'1101') then 
       zeros <= '1110'; 
      else 
       zeros <= '0111'; 
      end if; 
     end if; 
end process; 

end Behavioral; 

私は次のエラー受け取る:

線15パースエラー、予期しないプロセス

線18パースエラー、予期しないTICK

を20行目。解析エラー、予期しないTICK

行23.解析エラー私はVHDLに新しいとかなり混乱しているライン12 SEMICOLON

ませ感度リストやプロセスにおけるウェイトなし(警告)

を期待していない、

ライン26パースエラー、予期しないENDをTICKそれらのエラーによって。

+2

注リテラル文字'違い』A''と文字列リテラル'」AAAA」を '。 –

+0

のであなたは?右のコードを掲載しました行番号が一致しない場合でも、 'process'行にエラーがなく、予期しない' END'もありません。 –

答えて

-1

[OK]を見つけました。

私が使用していた「の代わりに 『信号でを。

+1

単純な型ではなくベクトルになります –

+0

これは解決しませんその他のエラー。 –