AR# 14548

|

4.2i CORE Generator - BLKMEMDP_V4_0.v ファイルに無効なレジスタが含まれているため VCS シミュレーション エラーが発生する

説明

キーワード : COREGen, VCS, simulation, block, memory, シミュレーション, ブロック, メモリ

重要度 : 標準

概要 :
VCS シミュレータを使用して Asynchronous FIFO または Dual-Port Block Memory コアをシミュレーションすると、「index out of bound」というエラー メッセージが表示されます。

このエラーは、BLKMEMDP_V4_0.v ファイルに次のようなベクタ定義が含まれているために発生します。
reg [c_depth_a*c_width_a-1 : 0] mem;

when:
c_width_a = 135 (c_data_width)
c_depth_a = 8191 (c_fifo_depth)

これらの 2 つの数を乗算すると、ベクタは 1 つ (1,105,785 ビット) でも FIFO を許容できるほどの大きさになります。 この方法を使用する場合は、ベクタをアレイ (メモリ エレメント) として表す必要があります。 インデックスの付いた長い直線ベクタよりもアレイの方がよく使用されるため、ベクタをアレイとして表すと、シミュレーション パフォーマンスが向上し、デバッグがかなり容易になります。 また、この後のインプリメンテーションに変化はありませんが、その結果は異なります。

ソリューション

VCS またはその他の Verilog シミュレータを使用する場合、この問題の回避策はありません。 (ザイリンクス アンサー #8065) に記述されているように、NGDBuild 後にシミュレーションを実行することをお勧めします。

MTI シミュレータを使用すると、この問題は発生しません。
AR# 14548
日付 10/08/2003
ステータス アーカイブ
種類 一般
People Also Viewed