• 締切済み

VHDLのvector

VHDLにおいて「vector(5bitとします)の全bitが'0'である場合」という条件のif文を書く場合、if(Data = "00000") then と記述する以外に方法はありませんか? ここでは Data :in std_logic_vector(4 downto 0); としています。 5bitくらいならまだいいですが、16bitなどでもひたすら'0'を羅列するしかないのでしょうか?よろしくお願いします。

みんなの回答

  • techa
  • ベストアンサー率60% (41/68)
回答No.1

othersを使えばできますね。 Data : in std_logic_vector( 4 downto 0 ); のとき、 Data <= ( others => '0' ); で全部0にセットできます。

inst
質問者

補足

ありがとうございます☆vectorに'0'をセットする場合は、「others => '0' 」でコンパイルできました。 しかし、if文 の条件文の中で「もしvectorの全てのbitが '0' の場合… 」としたいのですが、この時に「others~」を使うとエラーになってしまいます。vector = "000…00"とする以外の記述方法があったら、教えてください。

関連するQ&A

専門家に質問してみよう