AR# 21452

ザイリンクス HSPICE モデルがサードパーティの HSPICE モデルを競合する場合がある

説明

キーワード : SPICE, simulation, library, parameter, name, error, モデル, シミュレーション, ライブラリ, パラメータ, 名前, エラー

重要度 : 標準

概要 :
ザイリンクス HSPICE モデルをサードパーティの HSPICE モデルと共に使用するときに、この 2 つのライブラリに同じ名前のモデルまたはパラメータが含まれているとエラーが発生する場合があります。

このエラーは、Virtex-II および Virtex-II Pro の HSPICE ライブラリで発生します。 Virtex-4 の HSPICE ライブラリは、すべてのモデルおよびパラメータに対して独自の命名規則に従って作成されているので、競合が発生することはありません。

同じ名前のモデル (.model) が含まれていると、シミュレーションで次のようなエラー メッセージが表示されます。
"<card> attempted to re-define <model>"

同じ名前のパラメータ (.param) が含まれていると、シミュレーションは完了しますが、 シミュレータで最初に検出されるパラメータの定義が最後に検出されるパラメータの定義で上書きされてしまうため、結果が不正になっている可能性があります。

ソリューション

この問題は、ライブラリ コンテンツのスコープを変更することで回避できます。 .lib 文で定義されているライブラリは、スコープ内で常にグローバルであるためにほかのライブラリと競合するので、競合するライブラリのいずれかのコンテンツをこのライブラリのサブサーキットに含める必要があります。

ライブラリのコンテンツは、最上位のサブサーキット内で定義されているどのサブサーキットでも使用できるので、SPICE の最上位に表示されるサブサーキットのみに含めるだけで十分です。 たとえば、Virtex-II Pro の HSPICE では、'xlnx_rec' レシーバのサブサーキット 1 つが使用され、このサブサーキットの動作 (LVCMOS、LVDS など) は、サブサーキットに渡されたビット設定で定義されています。 この場合、ザイリンクスのライブラリ コンテンツは、'xlnx_rec' サブサーキットに 1 度だけコピーされる必要があります。これにより、下位のサブサーキットでこのライブラリのコンテンツが使用できるようになります。

上記の回避方法は、暗号化されたライブラリ コンテンツでも適用できます。

ザイリンクスのライブラリには、SS、TT、および FF のコーナーが含まれていることに注意してください。 この回避方法は、シミュレーションする各コーナーに対して個別に実行する必要があります。
AR# 21452
日付 12/15/2012
ステータス アクティブ
種類 一般