UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 9876

7.1i XST - 「ERROR:HDLParsers:1300 - file_name Line #. Enum 'type_name' is not an array index prefix.」というエラー メッセージが表示される

説明

キーワード : VHDL, enumerated, 3.1i, 列挙

重要度 : 標準

概要 :
デザインの VHDL コードで、存在しない配列にインデックスが付いていると、XST で次のようなエラー メッセージが表示されます。

"ERROR:HDLParsers:1300 - file_name.vhd Line #. <Object> 'type_name' is not an array index prefix."

このエラーは、<Object> を既に定義した、配列ではない VHDL ラベルが存在していると発生します。 コンポーネントのポート名とユーザー定義の値が、タイプが異なっているのに同じ名前が使用されていると、これらが XST で区別されないためです。 その後、XST で次のようなエラー メッセージが表示されます。

"ERROR:HDLParsers:1300 - file_name Line #. Enum 'type_name' is not an array index prefix."

ソリューション

このようなエラー メッセージは、次のような場合に表示されます。

1. キーワード port map を使用しないでインスタンシエートした場合

U1 : my_inst (a, b, c)

port map を使用する場合は次のとおりです。

U1 : my_inst port map (a, b, c)

2. コンポーネントのポート名がユーザー定義のタイプと同じ名前の場合

type data is std_logic;
:
:

component my_comp is
port (data : std_logic_vector (7 downto 0);
:
end component;

U2 : my_comp port map (data(0) => datain(0),
:

上記は、既に定義済みのラベルの配列にインデックスを付けた例です。
AR# 9876
作成日 08/08/2000
最終更新日 10/20/2005
ステータス アーカイブ
タイプ 一般