[PR]
2025年04月25日
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
VHDLの型に関して
2008年11月20日
VHDLは型については非常に厳格な言語です。C言語等と違って、異なる型同士で、演算、代入をする場合にはキャストをしないと必ずエラーが返ってきます。まぁそこが良い所でもあるのですが!
そこで型に関して簡単に紹介するので参考にして下さい。それぞれの型がどのライブラリで定義されているかまで説明すれば、長くなるんで割愛します。
Xが符号ナシ、Yが符号アリの場合このようにキャストすると正しい値が出てきます。
Z<=unsigned(X)*signed(Y)
そこで型に関して簡単に紹介するので参考にして下さい。それぞれの型がどのライブラリで定義されているかまで説明すれば、長くなるんで割愛します。
- Std_Logic
- 1bitデータを扱う。
- Std_Logic_Vector(基本はこれ)
- 複数ビットデータを扱う
- Signed(Std_Logic_Vectorのサブタイプ。符号アリ)
- Unsigned(Std_Logic_Vectorのサブタイプ。符号ナシ)
- Integer(整数。constantで定数を宣言するときに使ったりします。)
- Real(実数。これは使わないなー)
Xが符号ナシ、Yが符号アリの場合このようにキャストすると正しい値が出てきます。
Z<=unsigned(X)*signed(Y)
PR
Comment