AR# 13206

|

7.1i XST - 「ERROR:NgdBuild:455 - logical net 'N17' has multiple drivers/ERROR:NgdBuild:466 - input pad net 'N17' has illegal connection」 というエラー メッセージが表示される

説明

キーワード : port, signal, connected, unconnected, open, ポート, 信号, 接続, 未接続

重要度 : 標準

概要 :
デザインで信号/ポートが接続されていないと、NGDBuild で次のようなエラー メッセージが表示されます。

"ERROR:NgdBuild:455 - logical net "N17" has multiple drivers."
"ERROR:NgdBuild:466 - input pad net "N17" has illegal connection."

ソリューション

1

未接続または未使用の信号およびポートは、XST で次のように処理されます。

信号が駆動されているが、何も駆動していない場合
信号および関連するロジックは削除されます。 信号に接続されているポートは未接続になります。 この場合、使用されていない信号の KEEP 属性は無視されます。

信号が割り当てられている (駆動している) が、駆動されていない場合
信号はをグランドに接続され、ロジック 0 で駆動されます。

最上位ファイルでポートが接続されていない場合
- 入力ポートは保持されますが、入力ポートに何も接続されません。
- 未接続の出力および入出力ポートはグランドに接続されます。

ポートがサブブロックで未接続になっている場合
- コンポーネント宣言で入力ポートにデフォルト値を指定している場合、VHDL にあるコンポーネントのインスタンスに記述された 「open」キーワードが認識されます。
- コンポーネント宣言に含まれていない入力ポートはグランドに接続されます。
- 接続されていない出力ポートがある場合は、サブブロックが削除されます。

2

インスタンシエートされた IBUF の入力ポートが接続されていない場合、NGDBuild でもこれらのエラー メッセージが表示されます。

この問題を回避するには、IBUF の入力を有効なポートに接続するか、IBUF のインスタンスを削除してください。

3

ギガビット トランシーバ (GT) の RXN および RXP ポートを接続していない場合、NGDBuild で上記のエラー メッセージが表示されます。 これら 2 つのポートは、GT コンポーネントの主要な通信ポートです。 これらのポートを使用しない場合、GT コンポーネントは使用できないので、デザインから削除する必要があります。

4

複数の IBUF (および OBUF) タイプのコンポーネントが隣り合わせに接続されている場合、NGDBuild で上記のエラー メッセージが表示されます。 次のような IBUF タイプのコンポーネントは、隣り合わせに接続しないでください。

IBUFx
IFDDRx
BUFGP

5

「ERROR:NgdBuild:466 - input pad net "N17" has illegal connection」というエラー メッセージは、ポートが双方向ポートとして記述されていて、それがデザインの最上位ではなく下位レベルに記述されている場合にも発生することがあります。 XST では、[Keep Hierarchy] オプションがオンの場合 (デフォルトではオフ)、この双方向ポートを最上位に移動できません。 この問題を回避するには、双方向の記述を最上位に移動するか、[Keep Hierarchy] オプションをオフにしてください。

ISE :
1. プロセス ウィンドウで [Synthesize - XST] を右クリックし、[Properties] をクリックします。
2. [Category] で [Synthesis Options] をクリックします。
3. [Keep Hierarchy] を [No] に設定します。

XST コマンド ライン:
-keep_hierarchy No

この問題は、最新版の 6.2i サービス パックで修正されています。サービス パックは次のサイトから入手できます。
http://www.xilinx.co.jp/xlnx/xil_sw_updates_home.jsp
この修正は、6.2i サービス パック 1 以降に含まれます。

6

複数のソースをデバッグするには、階層の区切りにデフォルトのアンダースコア (_) ではなくスラッシュ (/) を使用します。次の手順に従います。
1. [Edit] -> [Preferences] をクリックします。
2. [Property display level] に [Advanced] を選択します。
3. [OK] をクリックします。
4. 次の手順に従い、階層の区切りに / を使用するように設定します。
a) [Synthesize - XST] を右クリックします。
b) [Properties] をクリックします。
c) [Category] で [Synthesis Options] をクリックします。
d) [Hierarchy Separator] で [/] を選択します。

これでデザイン階層にアンダースコアの代わりにスラッシュが使用され、信号名に使用されているアンダースコアとの混乱を最低限に抑えることができます。
AR# 13206
日付 10/23/2008
ステータス アーカイブ
種類 一般
People Also Viewed