AR# 61241

エラー挿入を使用したテストのための Soft Error Mitigation IP ガイダンス

説明

このアンサーは、既存の Soft Error Migration IP の製品ガイドを補足するためのもので、手動でエラーを挿入して IP の機能を評価する方法を説明します。

ソリューション

一般的なガイダンス:

PFA とは異なり、連続したアドレスなので、常にリニア フレーム アドレス (LFA) を使用します。

有効な LFA の範囲は、status コマンドを実行すると IP で確認できます。次のフォーットでモニターインター フェイスを介して利用できます。

MF {8 桁の 16 進数} 最大フレーム (リニア カウント)

または、次の資料にも有効な LFA の範囲がリストされています。


Spartan-6 :
(Xilinx Answer 61736) SEM IP Soft Error Mitigation - Spartan-6 デバイスをターゲットにした LFA でエラー挿入するときの有効なアドレス範囲

Virtex-6 または 7 シリーズ :

(Xilinx Answer 65539) Virtex-6、7 シリーズ、Zynq-7000 デバイスをターゲットにした LFA によるエラー挿入の有効なアドレス範囲

UltraScale :

『SEM IP 製品ガイド』 14 ページの表 2-2

http://japan.xilinx.com/cgi-bin/docs/ipdoc?c=sem_ultra;v=latest;d=pg187-ultrascale-sem.pdf

基本的なエラー挿入テスト :

目標 :

  • IP 検出のテストおよびエラー訂正
  • エラーが検出され、それが正しく訂正されていることをシステムが記録していること、またはエラーまたは訂正不可能なエラーが検出されたときにシステムがデザインをリコンフィギュレートできることをテスト
  • エラーがデザインの機能に影響を及ぼす場合はデザインの動作をテストしない

手順 :

  • フレームの ECC ワードにエラーを挿入。ECC パリティ ビットの 1 つを挿入のためのターゲット ビットとして選択します。
  • ECC ワードはコンフィギュレーション ビットのパリティ ビットの 1 つでしかないため、挿入されたエラーがデザイン機能を妨げることはありません。

各 FPGA ファミリのコンフィギュレーション フレームの ECC ワードの位置 :


Spartan-6 : 16 ビット ワードの 66 個あるうちの 66 番目のワード


たとえば、36 ビットのリニア フレーム アドレス挿入で、フレーム #F の最終ワード (66 番目) の LSB に 1 ビット エラーを挿入します。

> N C0000F820

Virtex-6 : 32 ビット ワードの 81 個あるうちの 41 番目のワード


たとえば、36 ビットのリニア フレーム アドレス挿入で、フレーム #F の 41 番目のワードの LSB に 1 ビット エラーを挿入します。

> N C0000F500


7 シリーズ : 32 ビット ワードの 101 個あるうちの 51 番目のワード


たとえば、40 ビットのリニア フレーム アドレス挿入で、フレーム #F の 51 番目のワードの LSB に 1 ビット エラーを挿入します。

> N C00000F640

UltraScale : 32 ビット ワードの 123 個あるうちの 62 番目のワード


たとえば、40 ビットのリニア フレーム アドレス挿入で、フレーム #F の 62 番目のワードの LSB に 1 ビット エラーを挿入します。

> N C00000F7A0

常にポピュレートされた ECC ビットを挿入できるように、ワードの最下位バイトのみをターゲットにしてください。 

また、すべてのアドレスが存在しているわけではないため、上記の挿入が検出されない可能性もあります。 

また、具体的なコマンドのフォーマットに関しては、該当する FPGA ファミリの SEM IP の資料を参照してください。


ランダム化エラー挿入テスト :

目標 :


コンフィギュレーションフレーム内のランダムな位置にエラーを挿入することは可能ですが、次のような好ましくない結果を招く場合があることに留意しておく必要があります。

  1. ユーザー デザインが機能しなくなる可能性があります。
  2. IP が動作停止したり、誤動作することがあります。
  3. コンフィギュレーション ビットのロケーションの多くはマスクされていたり、実際のコンフィギュレーション メモリになかったりするため、エラーが検出されない可能性があります。
  4. エラーの検出や訂正がカスケードされている場合は、マルチビットのエラー挿入に関連していることがよくあります。

注記 : Spartan-6 の場合、マスクされたフレームは読み出しだけで、書き込まれることはありません。そのようなフレームにエラー挿入が行われると、エラーがデザインの動作を変えてしまうことがありますが、SEM IP ではそれが検出されません。

このテストは、実際のデザインおよび SEU へのシステム応答を再現するのに使用することができます。そのようなシナリオへの対応方法、および適切な対応ができるようにシステム応答を緩和する方法を理解し、予測しておくようにしてください。

ランダム エラー挿入を実行する場合、ザイリンクスでは、特定のカスタマー デザイン結果を解析したり、エラー ロケーションとデザインの関連付けを解析することはサポートしていません。ランダム エラー挿入はビーム試験設備にアクセスできないカスタマー用にのみサポートされています。


SEM IP モニターおよびエラー挿入インターフェイスを使用したエラー挿入の一般ガイダンス

  • エラー挿入コマンドは、その機能が IP 生成時にオンになっている場合にのみ使用可能になります。
  • エラー挿入は、IP が IDLE 状態のときにのみ実行すべきで (モニター ポートの ASCII 確認または status_* 信号を使用)、挿入を実行する前に IDLE ステートに遷移している必要があります。
  • IP がコマンドを受諾し完了したことを確認するため、status_injection へステートが遷移してから、また IDLE に戻ったかどうかをチェックします。これは、挿入が正しく行われたことを確認する作業ではありません。
  • 複数のビットを挿入する必要がある場合は、1 回に 1 ビット エラー挿入して、次の挿入を行う前に IP が IDLE に戻っていることを確認します。IP が IDLE になっていないと、エラー挿入命令は却下されるか失われます。
  • レポートされている有効 LFA 範囲内でエラーを挿入します。そうでないと、IP がエラーを無視します。
    注記 : 絶対最大フレームはファミリごとに異なるため (MF-1 や MF-2 など)、コアの製品ガイドで確認してください。
  • エラー挿入の実行および監視には、モニター/UART インターフェイスを使用することを推奨します。このインターフェイスは最も詳細な情報を提供するからです (構文、ASCII 文字の数が無効だったり間違っていても、コマンドはエコーせず、ステートの変化などが表示されます)。
  • コマンド インターフェイスを使用している場合は、エラーを挿入する前に IP が IDLE 状態になっていることを確認し、また、IP がエラー挿入ステートに遷移することを確認するため、ステータス インターフェイスを必ず監視してください。
  • モニター インターフェイスやステータス ポートから予期しない結果が見られる場合は、各挿入実行後に FPGA をリコンフィギュレートするのがベストです。
  • 続けてランダム エラー挿入を実行することはサポートされていません。1 つの FPGA デザインに多くのエラーが発生する確率はほぼないため、連続してランダム エラーを挿入するような状況は実際にはあり得ないためです。
  • *UltraScale のみ : コンフィギュレーション データが実際に変更になったことを確認するには、エラー挿入の前後にクエリー コマンドを使用します。挿入がうまくいったかどうかを確認するには、よい方法です。データを見ても変化が見られなかった場合、コンフィギュレーション フレームはマスクされているか、存在しないメモリ ロケーションに応答している可能性があります。その場合、挿入は失敗で、エラーは検出されません。これは標準動作です。

エラー挿入時の特別な注意事項 :

SEM により訂正不可能なエラー コンディションがレポートされたときは、デバイスをリコンフィギュレートして回復させます。 

SEM が動作停止したり、誤動作し始めた場合も、リコンフィギュレーションが必要です。ユーザー デザインが誤動作し始めた場合は、常にリコンフィギュレートするとリカバリできます。ユーザー デザインでロジック レベルのリセットを使用したリカバリがサポートされている場合は、その方法も可能です。

訂正不可能なエラーがレポートされた場合は、さらにエラー挿入を行う前にデバイスをリコンフィギュレートしてください。

ユーザー デザインが停止した場合は、リコンフィギュレートすると常にリカバリできますが、エラー訂正がうまくいった場合は、デザインでロジック リセットがサポートされているなら、それを使用することも可能です。

IP の動作が停止したり、誤動作する場合は、デバイスをリコンフィギュレートし、前のエラー挿入または訂正の結果を破棄してください。

  • Zynq の場合、エラー挿入に応答しない PS ロケーションに対応する LFA アドレスがあります。その LFA 範囲の真ん中にあるアドレスを使用することを推奨します。
  • フレームがマスクされていたり、インプリメントされなかったことが原因で、エラーが挿入されず、検出も訂正もされない可能性があります。
  • マスクされたフレームはダイナミック メモリ (DRP、SRL など) に関連しています。
  • 1 ビット エラーが挿入された後、IP がエラー検出または訂正を行うには、OBSERVATION ステートへ遷移する必要があります。

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

サブアンサー レコード

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
66570 UltraScale Architecture Soft Error Mitigation Controller - エラー挿入を使用したテストのためのガイダンス N/A N/A
AR# 61241
日付 05/09/2016
ステータス アクティブ
種類 一般
デバイス 詳細 概略
IP