AR# 15294

|

7.1i/6.1i NetGen、タイミング シミュレーションn - GSR を使用していないのに GSR とローカル リセットに OR ゲートが付けられる

説明

キーワード : Timing, Simulation, NGDAnno, GSR, Reset, RST, OR, X_OR, setup, タイミング, シミュレーション, リセット, セットアップ

VHDL タイミング シミュレーションのネットリストで、デザインに GSR を使用していなくても、X_OR ゲートがネットリストに挿入されて GSR およびローカル リセットに OR が付けられます。 これはどうしてですか。 X_OR ゲートの SDF の遅延は正しいですか。

ソリューション

この手法は、ISE 8.1i 以降のバージョンでは使用されません。

この理由は何ですか

ハードウェアでは、コンフィギュレーションの際に GSR がアサートされ、コンフィギュレーションが完了すると解放されます。 これは、デザインに GSR が使用されているかどうかにかかわらず行われます。 デザインのすべてのレジスタを適正に初期化するには、シミュレーションの初期段階で GSR が送られ、コンフィギュレーション中に発生する GSR パルスがシミュレーションされる必要があります。 デフォルトでは、シミュレーションの初期段階で NGD2VHDL によって GSR が 100ns パルスになります。

GSR およびローカル リセットをデザインの各レジスタに接続するには、この 2 つの信号に OR を付ける必要があります。

X_OR ゲート上の SDF の遅延は適正ですか

X_OR ゲート上の遅延は適正です。 通常、OR ゲート用の SDF の遅延は次のように表示されます。

(CELL (CELLTYPE "X_OR2")
(INSTANCE i_csf_core/i_xfer8k1/dout_9186_GSR_OR_1451)
(DELAY
(ABSOLUTE
(PORT I0 (4483:4483:4483)(4483:4483:4483))
(PORT I1 (8741:8741:8741)(8741:8741:8741))
(IOPATH I0 O (0:0:0)(0:0:0))
(IOPATH I1 O (0:0:0)(0:0:0))
)

PORTI0 および PORTI1 の遅延は、ネット遅延です。 これらの遅延は実際の遅延です。 ローカル リセットのネット遅延を見ると、PORTI0 の遅延に一致していることがわかります。

X_OR ゲート上の SDF の遅延は、次のように表示されることがあります。

(CELL (CELLTYPE "X_OR2")
(INSTANCE i_csd_obuf/csd648_9p_GSR_OR_51)
(DELAY
(ABSOLUTE
(PORT I0 (1608:1608:1608)(1608:1608:1608))
(PORT I1 (7458:7458:7458)(7458:7458:7458))
(IOPATH I0 O (562:562:562)(562:562:562))
(IOPATH I1 O (562:562:562)(562:562:562))
)

これは、ローカル リセットが IOB のフリップフロップをリセットした場合に発生します。 上記の例で、OR ゲートにアノテートされた 0.562ns は実際には IOB の遅延です。 この場合、TRCE で Tiorcko 値が 1.064ns に指定されています。 この遅延は、IOB 入力から IOB フリップフロップまでの遅延とフリップフロップのリカバリ タイムを足して算出されます。 SDF の場合、フリップフロップのリカバリ タイムは 0.502ns です。 X_OR ゲートにアノテートされた遅延 (0.562ns) およびフリップフロップのリカバリ タイム (0.502ns) を追加した場合、Tiorcko 値 1.064ns が得られます。 OR ゲートの遅延は真の遅延であり、適正です。
AR# 15294
日付 11/10/2008
ステータス アーカイブ
種類 一般
People Also Viewed