AR# 55037

Spartan-3A および Spartan-6 のデザイン アドバイザリ - SelectMAP コンフィギュレーション後、Readback CRC がイネーブルになり、ABORT がトリガーされると、Readback CRC で不要波エラーが検出されることがある

説明

コンフィギュレーションが終了した後に SelectMap インターフェイスの CS および RDWR ピンに動作がある場合、FPGA コンフィギュレーションが破損している可能性があるので、Spartan-6 および Spartan-3A デバイスの Readback CRC でエラーが検出されることがあります。FPGA コンフィギュレーションの破損のために、この後機能的なエラーが発生することもあります。これは、SelectMap インターフェイスをアクティブに維持するために Bitgen -g Persist オプションを使用してもしなくても発生します。以前は、Bitgen -g Persist:Yes が設定されていない限り CS および RDWR ピンが無視されると記載されていました。エラーは、Readback CRC 機能が実行されているときに ABORT シーケンスがトリガーされると、SelectMAP コンフィギュレーション後に発生します。ABORT がトリガーされるタイミング図は、『Spartan-6 コンフィギュレーション ユーザー ガイド』 (UG380) の「SelectMAP ABORT」セクションを参照してください。

問題を明らかにするためには、次の条件が満たされている必要があります。

  • SelectMAP コンフィギュレーション モードを使用している
  • POST_CRC が実行中である
  • RDWR_B および CSI_B がコンフィギュレーション後の入力/双方向として再利用され、ABORT をトリガーするためにトグルされている
  • ICAP が FPGA デザインにインスタンシエートされていない


ソリューション

この問題に対しては、複数の回避策があります。

回避策 1

デザインに ICAP プリミティブをインスタンシエートします。これにより、RDWR_B/CSI_B 信号がモニタリングされないようになります。ICAP をインスタンシエートする場合、フリーランニング クロックを CLK ピンに提供する必要があります。このクロックは、Readback CRC のクロック ソースになり、必須です。ICAP プリミティブのインスタンシエート方法の詳細は、『Spartan-6 ライブラリ ガイド (HDL 用)』 を参照してください。

次は ICAP インスタンシエーションの例です。これらのインスタンスでは、CE と PDWR が High になることで ICAP をディスエーブルにします。 クロックは提供されます。その他すべてのポートはオープンのままです。

Spartan-3A

ICAP インスタンシエーションの例

// ICAP_SPARTAN3A: Internal Configuration Access Port

ICAP_SPARTAN3A test_icap (

.BUSY(), // Busy output

.O (), // 8-bit data output

.CE(1'b1), // Clock enable input

.CLK(clk), // Clock input for the POST_CRC logic

.I(8'h00), // 8-bit data input

.WRITE(1'b1) // Write input

);

// End of ICAP_SPARTAN3A_inst instantiation
 

Spartan-6

  ICAP_SPARTAN6 ICAP_SPARTAN6_inst (

   .BUSY(), // Busy output

.O (), // 8-bit data output
.CE(1'b1), // Clock enable input
.CLK(clk), // Clock input for the POST_CRC logic
.I(8'h00), // 8-bit data input
.WRITE(1'b1) // Write input
 
  );

回避策 2
SelectMAP コンフィギュレーション後は RDWR_B および CSI_B を再利用しないようにします。この問題は、コンフィギュレーションが終了してから CS と PDWR がトグルしないようにすると回避できます。

回避策 3
RDWR_B および CSI_B 信号の動作を制御して、ABORT シーケンスがトリガーされないようにします。ピンの使用方法によって、『Spartan-6 コンフィギュレーション ユーザー ガイド』 (UG380) の「SelectMAP ABORT」セクションに示すように ABORT を回避することもできます。

回避策 4
SelectMAP モード以外のコンフィギュレーション モード (シリアル モードなど) を使用してください。

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

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

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
34856 Spartan-6 FPGA のデザイン アドバイザリのマスター アンサー N/A N/A
55115 Spartan-3A/3AN/3A DSP FPGA のデザインアドバイザリ マスター アンサー N/A N/A
AR# 55037
日付 03/28/2013
ステータス アクティブ
種類 デザイン アドバイザリ
デバイス 詳細 概略