10.Stratix V デバイスにおける SEU の緩和 December 2010 SV51011-1.2 この資料は英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。こちらの日本語版は参考用としてご利用ください。設計の際 には、最新の英語版で内容をご確認ください。 SV51011-1.2 この章では、Stratix® V デバイスがユーザー・モードのときにエラー検出 CRC (Cyclic Redundancy Check)機能をアクティブにして使用する方法、および CRC エ ラーにより発生したコンフィギュレーション・エラーから回復する方法について説 明します。このエラー検出機能は、Stratix V デバイスで強化されています。 この章は、以下の項で構成されています。 ■ 10-1 ページの「エラー検出の基礎」 ■ 10-2 ページの「コンフィギュレーション・エラー検出」 ■ 10-2 ページの「ユーザー・モード・エラー検出および訂正」 ■ 10-6 ページの「エラー検出ピンの説明」 ■ 10-7 ページの「エラー検出ブロック」 ■ 10-9 ページの「エラー検出のタイミング」 ■ 10-12 ページの「ソフトウェア・サポート」 ■ 10-12 ページの「CRC エラーからの回復」 航空電子、テレコム、システム・コントロール、および軍事用アプリケーションの 分野で使用されるクリティカルな用途では、以下ができることが重要です。 1 ■ Stratix V デバイスに格納されたコンフィギュレーション・データが正確であるか を確認する。 ■ システムにコンフィギュレーション・エラーの発生を警告する。 Stratix V デバイスの場合、Quartus®II ソフトウェア v10.0 からエラー検出 CRC 機能が 提供されています。 Stratix V ファミリのエラー検出 CRC 機能を使用しても、フィッティングや性能には 影響を与えません。 エラー検出の基礎 エラー検出では、媒体から受信したデータが送信中に破壊されたかどうかを判定し ます。これを実行するために、トランスミッタはデータのチェックサム値を計算し、 オリジナルのデータ・フレームにチェックサムを付加するファンクションを使用し ます。レシーバはこのファンクションを使用して、受信データ・フレームのチェック サムを計算し、これを送信されたチェックサムと比較します。この 2 つのチェック サム値が等しい場合、受信データ・フレームは正しく、送信中またはストレージ中 にデータ破壊は発生していません。 エラー検出 CRC 機能も、同じ概念を使用しています。Stratix V デバイスが正常にコ ンフィギュレーションされ、ユーザー・モードになっている場合は、エラー検出 CRC 機能により、コンフィギュレーション・データの完全性が確保されます。 © 2011 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS and STRATIX are Reg. U.S. Pat. & Tm. Off. and/or trademarks of Altera Corporation in the U.S. and other countries. All other trademarks and service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance of its semiconductor products to current specifications in accordance with Altera’s standard warranty, but reserves the right to make changes to any products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information, product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device specifications before relying on any published information and before placing orders for products or services. Startix V デバイス・ハンドブック 2011 年 5 月 Subscribe Stratix V デバイスにおける SEU の緩和 コンフィギュレーション・エラー検出 10–2 コンフィギュレーション・エラー検出 コンフィギュレーション・モードでは、フレーム・ベースの 16 ビット・コンフィ ギュレーション CRC がコンフィギュレーション・データ内に格納され、各データ・ フレームの CRC 値を保持しています。 コンフィギュレーション中には、Stratix V デバイスが受信したデータ・フレームに 基づいて 16 ビット・コンフィギュレーション CRC 値を計算し、それをデータ・ス トリームの計算済み 16 ビット・コンフィギュレーション CRC 値と比較します。こ れらの 16 ビット・コンフィギュレーション CRC 値が一致しない場合、nSTATUS が Low に設定されます。コンフィギュレーションは、デバイスがエラーを検出するか、 コンフィギュレーションが完了するまで継続します。 ユーザー・モード・エラー検出および訂正 Stratix V デバイスは、自動 SEU(Single Event Upset)検出内蔵回路を提供します。 高中性子束環境で、デバイスにエラーのない動作を要求するアプリケーションでは、 継続的なデータ完全性を確保するために定期的なチェックが必要です。エラー検出 CRC 機能は、データの信頼性を確保しており、SEU を軽減するために最良の選択肢 の1つです。 このエラー検出 CRC 機能は、Stratix V デバイス内の既存の回路を用いて実装できる ため、外部ロジックは必要ありません。Stratix V デバイスはエラー検出回路を内蔵 し、コンフィギュレーション・ランダム・アクセス・メモリ(CRAM)セル内のソ フト・エラーによるデータ破壊を検出します。この機能により、CRAM のすべての 内容を読み出して検証し、コンフィギュレーション計算済みの 32 ビット・エラー検 出 CRC の値に一致させることができます。ソフト・エラーとは、イオン化した粒子 によって生じる CRAM ビット状態の変化のことです。 デバイスがユーザー・モードになった後エラー検出プロセスをイネーブルするため には、Quartus II ソフトウェアの Device and Pin Options ダイアログ・ボックスの Error Detection CRC ページで、Enable Error Detection CRC_ERROR pin オプ ションをオンにしてください。 このエラー検出機能は、デバイスの内容に基づいて継続的にコンフィギュレーショ ンされた CRAM ビットの 32 ビット・エラー検出 CRC 値を計算し、それをコンフィ ギュレーションの終了時に取得した計算済みの 32 ビット・エラー検出 CRC 値と比 較します。この 32 ビット・エラー検出 CRC 値は、コンフィギュレーション・ス テージに計算されます。エラー検出回路は、フレームごとに 32 の CRC チェック・ ビットを生成し、それらを CRAM に格納します。両方の 32 ビット・エラー検出 CRC 値が一致する場合、現在のコンフィギュレーション CRAM ビットにはエラー はありません。このエラー検出プロセスは、デバイスがリセットされる(nCONFIG を Low に設定)まで継続します。 シングル 32 ビット・エラー検出 CRC 計算は、フレームごとに実行されます。エ ラーが検出されていない場合、フレームの CRC 計算を完成すると、32 ビット・シ グネチャは 0x00000000 となります。エラー検出回路がエラーを検出していない場 合、出力信号 CRC_ERROR は Low に設定されます。CRAM ビット・エラーが検出さ れた場合、シグネチャは 0 以外になり、そしてエラー検出回路はエラー・ビット位 置の検索を開始します。 Stratix V デバイス・ハンドブック Altera Corporation 2011 年 5 月 Stratix V デバイスにおける SEU の緩和 ユーザー・モード・エラー検出および訂正 10–3 Stratix V デバイスのエラー検出回路は、各フレームの CRC チェック・ビットを計算 し、チップ内でビット・エラーを検出すると、CRC_ERROR ピンを High にプルアップ します。フレーム内では、すべてのシングル・ビット、ダブル・ビット、3 ビット、 4 ビットおよび 5 ビットのビット・エラーを検出することができます。SEU によっ て CRAM ビットが 5 ビット以上反転する確率は、ほとんどありません。一般に、す べてのエラー・パターンが検出される確率は 99.9999%です。 エラー検出回路は、ビット位置をレポートし、シングル・ビット・エラーおよびダ ブル隣接エラーのタイプを判別します。その他のエラー・パターンが発生する確率は 非常に低いため、ビットの反転位置に関するレポートは保証されません。 JTAG およびコア・インタフェースを介して、エラー・ビット位置を読み出すことも できます。エラー検出回路が別のフレームで次のエラーを検出する前に、エラー・ ビットを JTAG 命令、SHIFT_EDERROR_REG,、またはコア・インタフェースを介して、 エラー・メッセージ・レジスタ(EMR)からシフト・アウトする必要があります。 CRC 回路が動作を継続し、エラーが検出された場合は、リコンフィギュレーション を完了するか、または CRC エラーを無視するかを判断します。 表 10-1 に、JTAG 命令の SHIFT_EDERROR_REG の命令コードを示します。 表 10-1. SHIFT_EDERROR_REG JTAG 命令 JTAG 命令 命令コード SHIFT_EDERROR_REG 00 0001 0111 説明 JTAG 命令は、TDI ピンと TDO ピンの間で、 EMR をエラー検出ブロックの JTAG ピンに 接続します。 図 10-1 に、EMR の内容を示します。 図 10-1. エラー・メッセージ・レジスタ MSB LSB Syndrome Frame Address Double Word Location 32 bits 16 bits 10 bits Byte Offset Bit Offset Error Type 2 bits 3 bits 4 bits エラーのタイプは、EMR の最初の 4 ビットで特定されます。表 10-2 に、EMR 内で 表現されるエラーのタイプを示します。 表 10-2. エラー・メッセージ・レジスタ内のエラー・タイプ エラーのタイプ 説明 ビット 3 ビット 2 ビット 1 ビット 0 0 0 0 0 CRC エラーなし。 0 0 0 1 シングル・ビット・エラーの位置が特定されました。 0 0 1 0 隣接のダブル・ビット・エラーの位置が特定されました。 1 1 1 1 複数のエラーが発生しました。 その他 1 Altera Corporation 2011 年 5 月 予約 EMR からエラー情報をシフトアウトするためのタイミング要件について詳しくは、 10-9 ページの「エラー検出のタイミング」を参照してください。 Startix V デバイス・ハンドブック Stratix V デバイスにおける SEU の緩和 ユーザー・モード・エラー検出および訂正 10–4 エラー検出回路は、現在のフレームでエラーが発生したかどうかに関係なく、デー タの次のフレームに対する 32 ビット・エラー検出 CRC 値と 32 ビット・シグネ チャの計算を継続します。CRC_ERROR 信号をモニタし、CRC エラーが発生した場合 は、適切な処置を行う必要があります。 Stratix V デバイスのエラー検出回路は、32 ビット CRC-ANSI 規格(32 ビット多項 式)を CRC ジェネレータとして使用します。各フレームの計算された 32 ビット CRC シグネチャは、CRAM に格納されます。ストレージの合計サイズは、「32(1 フ レームあたりのビット数)× フレーム数」になります。 Stratix V デバイスのエラー検出 CRC 機能は、メモリ・ブロックと I/O バッファは チェックしません。これにより、CRC_ERROR 信号が以前にチェックした CRAM フ レームのエラー・ステータスに応じて、High または Low になったままの場合があり ます。I/O バッファのビットは、ストレージ・エレメントとして CRAM セルよりもソ フトウェア・エラーに強いフリップ・フロップを使用しているため、エラー検出中 はチェックされません。MLAB および M20K メモリ・ブロックは、内容にエラーが ないかチェックするのに使用されるパリティ・ビットをサポートしています。 f Stratix V メモリ・ブロックにおけるエラー検出について詳しくは、「TriMatrix Embedded Memory Blocks in Stratix V Devices」の章を参照してください。 Stratix V デバイスでは、エラー検出回路はエラー検出機能に加えて、エラー訂正お よび内部スクラビングをサポートします。内部スクラビングとは、検出されたソフ ト・エラーを内部で訂正する機能です。これはフレームごとに実行されます。内部ス クラビングがイネーブルされると、デバイスは動作している間に、CRAM ビット内 のシングル・ビット・エラーまたは隣接のダブル・エラーを訂正します。 エラー検出ブロックのテスト機能を提供するために、JTAG 命令 EDERROR_INJECT が 用意されています。この命令は、Stratix V デバイスのエラー・インジェクションに使 用される 47 ビット JTAG フォールト・インジェクション・レジスタの内容を変更す ることができ、エラー検出ブロックのテストを実施できます。 1 デバイスがユーザー・モードのときは、EDERROR_INJECT JTAG 命令しか実行できませ ん。 表 10-3 に、EDERROR_INJECT JTAG 命令を示します。 表 10-3. EDERROR_INJECT JTAG 命令 JTAG 命令 命令コード 説明 EDERROR_INJECT 00 0001 0101 この命令は、エラー・インジェクションに使 用される 47 ビット JTAG フォールト・イン ジェクション・レジスタを制御します。 Jam™ ファイル(.jam)を作成して、テストと検証プロセスを自動化することがで きます。これにより、デバイスをリコンフィギュレーションすることなく、CRC 機 能をイン・システムでオン・ザ・フライに検証できます。CRC 回路に切り換えて、 SEU で誘発された実際のエラーをチェックできます。 Stratix V デバイス・ハンドブック Altera Corporation 2011 年 5 月 Stratix V デバイスにおける SEU の緩和 ユーザー・モード・エラー検出および訂正 10–5 シングル・エラーまたは相互に隣接するダブル・エラーをコンフィギュレーション・ メモリに導入することができます。これにより、デザインの検証およびシステムの障 害許容特性評価を容易に行うことができます。JTAG フォールト・インジェクショ ン・レジスタで EDERROR_INJECT JTAG 命令を使用して、リードバック・ビットを反 転します。Stratix V デバイスを、強制的にエラー・テスト・モードにします。アルテ ラでは、テストの完了後にデバイスをリコンフィギュレーションすることを推奨し ています。 1 最初のデータ・フレームでのみエラー・インジェクションを実行することができま すが、いつでもエラー情報をモニタすることが可能です。JTAG フォールト・イン ジェクション・レジスタおよびフォールト・インジェクション・レジスタについて 詳しくは、10-8 ページの「エラー検出レジスタ」を参照してください。 表 10-4 に、フォールト・インジェクション・レジスタの実装方法を示し、エラー・ インジェクションについて説明します。 表 10-4. フォールト・インジェクション・レジスタ ビット [46..43] ビット [31..0] インジェクトされた エラーのバイト位置 エラー・バイト値 最初のデータ・フ レームでインジェク トされたエラーの位 置を示します。 ビット・エラーの位 置を示し、エラー・ インジェクション・ タイプ選択に対応し ます。 エラーのタイプ 説明 内容 ビット [42..32] エラー・インジェクショ ンのタイプ ビット [46] ビット [45] ビット [44] ビット [43] 0 0 0 0 エラー・インジェクショ ンなし 0 0 0 1 シングル・エラー・イン ジェクション 0 0 1 0 隣接のダブル・エラー・ インジェクション その他 Altera Corporation 2011 年 5 月 予約 Startix V デバイス・ハンドブック Stratix V デバイスにおける SEU の緩和 エラー検出ピンの説明 10–6 エラー検出ピンの説明 表 10-5 に、CRC_ERROR について説明します。 表 10-5. CRC_ERROR Pin Description ピン名 CRC_ERROR ピン・タイプ I/O、出力、 または出力 オープン・ ドレイン Stratix V デバイス・ハンドブック 説明 エラー検出回路がコンフィギュレーション CRAM ビットでエラーを検出したことを示 すアクティブ High 信号です。このピンはオプションで、エラー検出 CRC 回路がイ ネーブルされるときに使用されます。エラー検出 CRC 回路がディセーブルされると、 このピンがユーザー I/O ピンになります。WYSIWYG 機能を使用するときに、crcerror ポートを WYSIWYG アトムから専用の CRC_ERROR ピンまたは任意のユーザー I/O に配 線することができます。crcerror ポートをユーザー I/O に配線するには、crcerror ポートと I/O の間に D タイプ・フリップ・フロップを挿入する必要があります。 デフォルトでは、エラー検出 CRC 回路がイネーブルされると、Quartus II ソフトウェ アは CRC_ERROR ピンを出力オープン・ドレインとして設定します。オプションで、 Quartus II ソフトウェアの Device and Pin Option ダイアログ・ボックスの Error Detection CRC ページで、Enable open-drain on CRC_ERROR pin をオフにすること で、このピンを出力に設定できます。CRC_ERROR が出力として使用される場合、ピンが 存在するバンクの VCCIO が信号を受信するシステムの入力電圧仕様に適合しているこ とを確認する必要があります。このピンをオープン・ドレインとして使用することで、 電圧レベリングという利点を得られます。このピンを 10 k 抵抗を介して VCCPGM に 接続することで、CRC_ERROR ピンをオープン・ドレインとして使用できます。または、 信号を受信するシステムの電圧仕様に応じて、ユーザーはこのピンを異なるプルアッ プ電圧に接続できます。 Altera Corporation 2011 年 5 月 Stratix V デバイスにおける SEU の緩和 エラー検出ブロック 10–7 エラー検出ブロック エラー検出ブロックには、Stratix V デバイス内のコンフィギュレーション CRAM ビット用の 32 ビットエラー検出 CRC シグネチャの計算に必要なロジックが含まれ ています。 この CRC 回路はエラーが発生した場合でも継続して動作します。CRC エラーが発 生すると、デバイスは CRC_ERROR ピンを High に設定します。表 10-6 に、コンフィ ギュレーション・ビットをチェックするための 2 種類の CRC 検出を示します。 表 10-6. 2 種類の CRC 検出 ユーザー・モード CRC エラー検出 コンフィギュレーション CRC エラー検出 ■ これは、CRC_ERROR ピンで使用するユーザー・ モード中の CRAM エラー・チェック機能(32 ビット・エラー検出 CRC)です。 ■ これは、各コンフィギュレーション・データ・フ レームに組み込まれている 16 ビット・コンフィギュ レーション CRC です。 ■ データの各フレームでは、フレーム・データの 最後に計算済み 32 ビット・エラー検出 CRC が CRC 回路に入り、エラーがあるかどうか判断し ます。 ■ コンフィギュレーション中、データのフレームが Stratix V デバイスにロードされた後、計算済みのコ ンフィギュレーション CRC が CRC 回路にシフト・ インされます。 ■ エラーがある場合、検索エンジンがエラーの位 置を検索します。 ■ ■ エラー検出ブロックが動作し続けている間、 JTAG 命令またはコア・インタフェース・ロ ジックによりエラー・メッセージをシフト・ア ウトできます。 ■ JTAG インタフェースは、最初のフレームの 32 ビット・エラー検出 CRC 結果を読み出し、32 ビット・エラー検出 CRC ビットをテスト用に 32 ビットストレージ・レジスタにシフトしま す。 同時に、シフト・インされたデータ・フレームの 16 ビット・コンフィギュレーション CRC 値が計算され ます。計算済みのコンフィギュレーション CRC と計 算されたコンフィギュレーション CRC 値が一致しな い場合、nSTATUS が Low に設定されます。どのデー タ・フレームにも 16 ビット・コンフィギュレーショ ン CRC があります。データ・フレームが多数あるた め、コンフィギュレーション・ビット・ストリーム 全体では多数の 16 ビット・コンフィギュレーション CRC 値があります。コンフィギュレーション・デー タ・フレームの長さはデバイスごとに異なります。 ■ シングル・エラー、または相互に隣接するダブ ル・エラーを、テストおよびデザイン検証のた めにコンフィギュレーション・メモリで意図的 に発生させることができます。 1 「エラー検出レジスタ」の項では、ユーザー・モード CRC エラー検出を中心に説明し ます。 Altera Corporation 2011 年 5 月 Startix V デバイス・ハンドブック Stratix V デバイスにおける SEU の緩和 エラー検出ブロック 10–8 エラー検出レジスタ エラー検出回路には、計算された CRC シグネチャを格納する 1 組の 32 ビット・レ ジスタがあります。シンドローム・レジスタにゼロ以外の値がある場合、CRC_ERROR ピンは High に設定されます。 図 10-2 に、エラー検出回路、シンドローム・レジスタ、およびエラー・インジェク ション・ブロックを示します。 図 10-2. エラー検出回路、シンドローム・レジスタ、および エラー・インジェクション・ブロック 32-Bit Error Detection CRC Calculation, Error Search Engine, and Internal Scrubbing Readback bitstream with expected CRC included Error Detection State Machine Syndrome Register Control Signals Error Message CRC_ERROR Register Error Injection Block Fault Injection Register JTAG Update User Update Register Register JTAG Shift User Shift Register Register JTAG Fault Injection Register JTAG TDO General Routing 表 10-7 は、図 10-2 に示すレジスタについて説明します。 表 10-7. エラー検出レジスタ ( 1 / 2 ) レジスタ 説明 シンドローム・レジスタ この 32 ビットのレジスタには、エラー検出検証サイクルでの現在のフレームの CRC シグネ チャが含まれています。CRC_ERROR 信号は、このレジスタの内容から派生したものです。 エラー・メッセージ・レ ジスタ この 67 ビット・レジスタには、エラー・タイプ、エラーの位置、および実際の症状に関する情 報が含まれています。レポートされるエラー・タイプおよびエラーの位置は、シングルおよび 隣接のダブル・ビット・エラーです。他のタイプのエラーに対する位置ビットは、EMR では識 別されません。レジスタの内容は、SHIFT_EDERROR_REG JTAG 命令またはコア・インタフェース を通してコアにシフト・アウトされます。 この 67 ビット・レジスタは、内容が検証されてから 1 サイクル後に EMR の内容で自動的に アップデートされます。このレジスタには、JTAG シフト・レジスタにサンプリングされる前に JTAG アップデート・レジ アサートする必要があるクロック・イネーブルが含まれています。この要求条件により、JTAG スタ アップデート・レジスタへの EMR の内容の書き込みと、JTAG シフト・レジスタによるその内 容の読み出しが同時に発生しないようにしています。 Stratix V デバイス・ハンドブック Altera Corporation 2011 年 5 月 Stratix V デバイスにおける SEU の緩和 エラー検出のタイミング 10–9 表 10-7. エラー検出レジスタ ( 2 / 2 ) レジスタ 説明 この 67 ビット・レジスタは、内容が検証されてから 1 サイクル後に EMR の内容で自動的に アップデートされます。このレジスタには、ユーザー・シフト・レジスタにサンプリングされる ユーザー・アップデート・ 前にアサートする必要があるクロック・イネーブルが含まれています。この要件により、ユー レジスタ ザー・アップデート・レジスタへの EMR の内容の書き込みと、ユーザー・シフト・レジスタに よるその内容の読み出しが同時に発生しないようにしています。 JTAG シフト・レジスタ このレジスタは、JTAG インタフェースからアクセスでき、SHIFT_EDERROR_REG JTAG 命令によ り JTAG アップデート・レジスタの内容をサンプリングし、読み出すことができます。 ユーザー・シフト・ レジスタ この 67 ビット・レジスタは、コア・ロジックからアクセスでき、ユーザー・ロジックにより ユーザー・アップデート・レジスタの内容をサンプリングし、読み出すことができます。 JTAG フォールト・ インジェクション・ レジスタ この 47 ビット・レジスタは、EDERROR_INJECT 命令によって完全に制御されます。このレジスタ は、ビットストリームに必要なエラー・インジェクションの情報を保持します。 フォールト・ インジェクション・ レジスタ フォールト・インジェクション・レジスタがアップデートされると、JTAG フォールト・イン ジェクション・レジスタの内容がこの 47 ビット・レジスタにロードされます。 エラー検出のタイミング QuartusII ソフトウェアを通してエラー検出 CRC 機能がイネーブルされると、デバ イスはユーザー・モードに入った後、自動的に CRC エラー検出をアクティブにしま す。 フレーム内でエラーが検出された場合、EMR がアップデートされた後、CRC_ERROR はエラー位置検索の最後に High にドライブされます。このサイクルの最後で、 CRC_ERROR ピンは最小 32 クロック・サイクル間 Low にプルダウンされます。次のフ レームにエラーが含まれる場合、EMR が新しい値を上書きされた後、CRC_ERROR は 再び High にドライブされます。ユーザーは、CRC_ERROR ピンの各立ち上がりエッジ おけるエラー・メッセージのアンロードを開始できます。エラー検出はデバイスが リセットされるまで動作します。 エラー検出回路は、最大周波数およびその分周周波数で内部コンフィギュレーショ ン・オシレータを動作させます。表 10-8 に、最小および最大エラー検出周波数を示 します。 表 10-8. 最小および最大エラー検出周波数 デバイス・ タイプ エラー検出周波数 最大エラー検出周波数 最小エラー検出周波数 有効な除数(n) Stratix V 100 MHz/2n 50 MHz 390 KHz 1、2、3、4、5、6、7、8 Quartus II ソフトウェアで分周係数を指定することによって、低いクロック周波数を 設定することができます(10-12 ページの「ソフトウェア・サポート」を参照)。除 数は 2 のべき乗です。ここで、n は 1 ~ 8 です。除数の範囲は 2 ~ 256 です(式 10–1)。 式 10–1. 100MHz エラー検出周波数 = --------------------n 2 Altera Corporation 2011 年 5 月 Startix V デバイス・ハンドブック Stratix V デバイスにおける SEU の緩和 エラー検出のタイミング 10–10 1 Stratix V デバイスでの CRC 計算はフレームごとに実行されるため、エラー 検出周波数がフレームで行われるエラー検出プロセスの周波数を反映して います。 EMR はエラーが発生するたびにアップデータされます。次のエラー位置が検出され る前にエラー位置とエラー・メッセージがシフト・アウトされていない場合、前の エラー位置とエラー・メッセージが新しい情報によって上書きされます。この問題を 回避するには、1 フレームの CRC 検証内にこれらのビットをシフト・アウトする必 要があります。EMR の各アップデートの最小時間間隔は、デバイスおよびエラー検 出クロック周波数によって異なります。ただし、エラー検出クロック周波数を低く すると、SEU イベントのエラー回復時間が長くなります。 表 10-9 に、Stratix V デバイスにおける EMR の各アップデートの推定最小時間間隔 を示します。 表 10-9. エラー・メッセージ・レジスタの最小アップデート間隔 — 暫定値 ファミリ Stratix V GX Stratix V GT Stratix V GS Stratix V E デバイス タイミング間隔 (s) 5SGXA3 2.73 5SGXA4 2.73 5SGXA5 3.59 5SGXA7 3.59 5SGXA9 4.87 5SGXAB 4.87 5SGXB5 3.73 5SGXB6 3.73 5SGTC5 3.59 5SGTC7 3.59 5SGSD2 未定 5SGSD3 未定 5SGSD4 2.99 5SGSD5 2.99 5SGSD6 4.55 5SGSD8 4.55 5SEE9 4.87 5SEEB 4.87 エラー検出回路が最初のフレームから最後のフレームまでチェックするのに必要な CRC 計算時間は、デバイスとエラー検出クロック周波数によって決まります。最小 CRC 計算時間は、最大エラー検出周波数によって算出されます(除数 1 を使用)。 最大 CRC 計算時間は、最小検出周波数によって算出されます(除数 8 を使用) 。式 10–2 によって、ほかの有効な除数 (n) で、特定のデバイス集積度の CRC 計算時間を 見積もるすることができます。 式 10–2. n 最小計算時間 CRC計算時間 = ------------------------------------ 2 2 Stratix V デバイス・ハンドブック Altera Corporation 2011 年 5 月 Stratix V デバイスにおける SEU の緩和 エラー検出のタイミング 10–11 表 10-10 に、Stratix V デバイスの最小および最大クロック周波数での各 CRC 計算に 対する見積り時間を示します。 表 10-10. 特定のデバイス集積度に対して — 暫定値 ファミリ Stratix V GX Stratix V GT Stratix V GS Stratix V E Altera Corporation 2011 年 5 月 デバイス 最小時間 (µs) 最大時間 (µs) 5SGXA3 2.71 5.42 5SGXA4 2.71 5.42 5SGXA5 3.57 7.14 5SGXA7 3.57 7.14 5SGXA9 4.85 9.70 5SGXAB 4.85 9.70 5SGXB5 3.71 7.42 5SGXB6 3.71 7.42 5SGTC5 3.57 7.14 5SGTC7 3.57 7.14 5SGSD2 TBD 未定 5SGSD3 TBD 未定 5SGSD4 2.97 5.94 5SGSD5 2.97 5.94 5SGSD6 4.53 9.06 5SGSD8 4.53 9.06 5SEE9 4.85 9.70 5SEEB 4.85 9.70 Startix V デバイス・ハンドブック Stratix V デバイスにおける SEU の緩和 ソフトウェア・サポート 10–12 ソフトウェア・サポート QuartusII ソフトウェアは、バージョン 10.0 以降で Stratix V のデバイスエラー検出 CRC 機能をサポートしています。Device and Pin Options ダイアログ・ボックスで この機能をイネーブルすると、オプションの CRC_ERROR 兼用ピンに CRC_ERROR 出力 が生成されます。 CRC を使用したエラー検出機能をイネーブルするには、以下のステップを実行しま す。 1. QuartusII ソフトウェアを開いて、Stratix V デバイスを使用してプロジェクトを 読み込みます。 2. Assignments メニューの Device をクリックします。Device ダイアログ・ボック スが表示されます。 3. Device and Pin Options をクリックします。Device and Pin Options ダイアロ グ・ボックスが表示されます。 4. Category リストで、Error Detection CRC をクリックします。 5. Enable Error Detection CRC_ERROR pin をオンにします。 6. デフォルトでは、エラー検出 CRC 回路がイネーブルされる場合、Quartus II ソフ トウェアは CRC_ERROR ピンを出力オープン・ドレインとして設定します。 Enable open-drain on CRC_ERROR pin をオフにすることで、このピンを出力 として設定できます。 7. 9 ページの表 10-8 に示すとおり、Divide error check frequency by ボックスに 有効な除数を入力します。 8. 内蔵エラー検出機能のオン / オフは、Enable internal scrubbing オプションに よって制御されます。 9. OK をクリックします。 CRC エラーからの回復 Stratix V を搭載するシステムは、デバイスのリコンフィギュレーションを制御しな ければなりません。CRC_ERROR ピンでエラーを検出した後、nCONFIG を Low にスト ローブして、システムが安全な状況で実行するようシステムに指示します。 い値に書き直されると、デバイスは正しく機能します。 アルテラ・デバイスではソフト・エラーはめったに発生しませんが、高信頼性アプ リケーションではこれらのエラーに対応したデザインが要求される場合があります。 Stratix V デバイス・ハンドブック Altera Corporation 2011 年 5 月 Stratix V デバイスにおける SEU の緩和 改訂履歴 10–13 改訂履歴 表 10-11 に、本資料の改訂履歴を示します。 表 10-11. 改訂履歴 日付 バーション 変更内容 ■ 11.0 リリースにより、この章を Volume 2 に移動 ■ 表 10-9 および 表 10-10 を更新 ■ テキストのマイナーな編集 2011 年 5 月 1.2 2010 年 12 月 1.1 10.1 リリース。内容の変更はなし 2010 年 7 月 1.0 初版 Altera Corporation 2011 年 5 月 Startix V デバイス・ハンドブック 10–14 Stratix V デバイス・ハンドブック Stratix V デバイスにおける SEU の緩和 改訂履歴 Altera Corporation 2011 年 5 月