« Prev | Next » VHDL コンパイル時の言語規格によるエラー 詳細 下記のコンパイルエラーが通知されました。 # Error: COMP96_0104: filename.vhd: Undefined type of expression. # Error: COMP96_0077: filename.vhd: Assignment target incompatible with right side. Expected type 'STD_ULOGIC_VECTOR'>. コンパイル時の言語規格が VHDL 1076-2008 または VHDL 1076-2006 (acom -2008 または -2006) の場合、COMP96_0071, COMP96_0104 または COMP96_0077 エラーが検出されます。コンパイル時の言語規格を VHDL 1076-2002 (acom -2002) にすると、エラーは通知されません。これはVHDL 2008規格に準拠していますか? 解決法 VHDL 2002 と 2008 では、STD_LOGIC_VECTOR タイプ宣言と STD_LOGIC_UNSIGNED パッケージに関して変更があり、STD_LOGIC_UNSIGNED パッケージのほとんどが NUMERIC_STD_UNSIGNED パッケージに移行しました。 STD_LOGIC_UNSIGNED をコメントアウトして、NUMERIC_STD_UNSIGNED を追加します。 --use IEEE.STD_LOGIC_UNSIGNED.all; use IEEE.NUMERIC_STD_UNSIGNED.all; VHDL 2008 における変更点の詳細については、Active-HDL/Riviera-PRO の Help の VHDL 2008 Migration Tips chapter/section を参照してください。 Previous article Next article