AR# 35499

MIG v3.4 Spartan-6 Traffic Generator - 128 ビットの双方向ポートのサンプル デザインがハードウェアで動作しない

説明

28 ビットの双方向ポート コンフィギュレーションの MIG v3.4 Spartan-6 FPGA Traffic Generator 内で mcb_wr_full フラグが生成されるときに問題が発生します。Traffic Generator は MIG 出力サンプル デザインで提供されています。ユーザー デザインやほかのポート コンフィギュレーションが使用されている場合は、この問題は起きません。

この問題はハードウェアで見られます。キャリブレーションは完了しているのですが、Traffic Generator がデータ送信を開始すべきときに MCB が停止してしまっているように見えます。この動作が常に見られるわけではありません。キャリブレーションは完了しているかもしれませんが、Traffic Generator の 1 回の実行ではエラーが出力されなかったのに、次の実行ではエラーが出力されたりします。

この問題を回避するには、Traffic Generator に手動で変更を加える必要があります。この問題は、MIG v3.4 のサンプル デザイン出力の 128 ビット双方向ポート コンフィギュレーションにのみ発生します (SP601/SP605 開発ボードをターゲットにしたデザインを含む)。この問題は ISE 12.2 に含まれる MIG v3.5 で修正される予定です。

ソリューション

この問題を回避するには、次の手順に従います。

1.example_design/rtl/traffic_gen ディレクトリにある mcb_traffic_gen.v/.vhd モジュールを開きます。

2.次のコードを検索します (行 317 から始まる)。

MIG 3.4 コード :

reg mcb_rd_empty;
always @ (mcb_rd_empty_i, mcb_rd_empty_r)
if ( FAMILY == "SPARTAN6")
mcb_rd_empty = mcb_rd_empty_r;
else
mcb_rd_empty = mcb_rd_empty_i;

reg mcb_wr_full;
always @ (mcb_wr_full_i, mcb_wr_full_r1)
if ( FAMILY == "SPARTAN6")
mcb_wr_full = mcb_wr_full_r1;
else
mcb_wr_full = mcb_wr_full_i;

3. このコードをコメント化して、次のコードに置き換えます。
回避策コード :

wire mcb_rd_empty;
assign mcb_rd_empty = mcb_rd_empty_i;

wire mcb_wr_full;
assign mcb_wr_full = mcb_wr_full_i;


アンサー レコード リファレンス

マスター アンサー レコード

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
34587 MIG v3.4 - ISE Design Suite 12.1 でのリリース ノートおよび既知の問題 N/A N/A
AR# 35499
日付 12/15/2012
ステータス アクティブ
種類 一般
デバイス
IP