Nios II Gen2 プロセッサー・リファレンス・ガイド

ID 683836
日付 10/28/2016
Public
ドキュメント目次

5.2.10. ECC

Nios II/f コアには、次の Nios II の内蔵 RAM ブロックに ECC サポートを追加するオプションがあります。
  • 命令キャッシュ
    • 命令キャッシュ内で発生する ECC エラー (1、2 または 3 ビット ) は回復可能で、Nios II プロセッサーは ECC エラーを訂正するのではなく、訂正する ECC エラーに代わって外部メモリーからキャッシュラインを読み出す。
  • レジスターファイル
    • 1 ビットの ECC エラーは回復可能。
    • 2 ビットの ECC エラーは回復不可であり、ECC 例外を生成する。
  • MMU TLB
    • ハードウェアの読み出しによりトリガーされる 1 ビットの ECC エラーは回復可能。
    • ハードウェアの読み出しによりトリガーされる 2 ビットの ECC エラーは回復不可であり、ECC 例外を生成します。
    • TLBMISCレジスターへのソフトウェアの読み出しによりトリガーされる 1 または 2 ビットの ECC エラーは例外をトリガーせず、代わりに、TLBMISC.EEを 1 に設定します。ソフトウェアはこのフィールドを読み出して TLB エントリーを無効 または 上書きする必要があります。
  • データキャッシュ
    • タグ RAM—ECCINJ.DCTAGフィールドは、ECC エラーをタグ RAM に注入するために使用されます。
    • データ RAM—ECCINJ.DCDATフィールドは、ECC エラーをデータ RAM に注入するために使用されます。
  • 密結合メモリー (TCM)—Nios II は TCM ごとの ECC エンコーダー / デコーダーロジックが含まれており、TCM マスターポートのデータ幅は Nios II が ECC パリティービットを読み書きできるように増加します。
    • 命令密結合メモリー (ITCM)—Nios II は最大 4 つの ITCM をサポートしています。
    • データ密結合メモリー (DTCM)—Nios II は最大 4 つの DTCM をサポートします。

ECCインターフェイスは、出力信号ecc_event_busを持つ Avalon-ST ソースです。このインターフェイスにより、Nios II プロセッサーの外部ロジックは ECC エラーを監視できます。

表 75.  ECC エラー信号
ビット フィールド 説明 ソフトウェアへの影響 使用可 / 不可
0 EEH 例外ハンドラーモード中の ECC エラー例外 ( 例 :STATUS.EH = 1) 致命的に近い 常時
1 RF_RE レジスターファイル RAM の回復可能な (1 ビット ) ECC エラー なし 常時
2 RF_UE レジスターファイル RAM の回復不可能な (2 ビット ) ECC エラー 致命的に近い 常時
3 ICTAG_RE 命令キャッシュタグ RAM の回復可能な (1、2 または 3 ビット ) ECC エラー なし 命令キャッシュが存在する場合
4 ICDAT_RE 命令キャッシュデータ RAM の回復可能な (1、2 または 3 ビット ) ECC エラー なし 命令キャッシュが存在する場合
5 ITCM0_RE ITCM0の回復可能な (1 ビット ) ECC エラー なし ITCM0が存在する場合
6 ITCM0_UE ITCM0 の回復不可能な (2 ビット ) ECC エラー 致命的な可能性あり ITCM0 が存在する場合
7 ITCM1_RE ITCM1 の回復可能な (1 ビット ) ECC エラー なし ITCM1 が存在する場合
8 ITCM1_UE ITCM1 の回復不可能な (2 ビット ) ECC エラー 致命的に近い ITCM1 が存在する場合
9 ITCM2_RE ITCM2 の回復可能な (1 ビット ) ECC エラー なし ITCM2 が存在する場合
10 ITCM2_UE ITCM2 の回復不可能な (2 ビット ) ECC エラー 致命的に近い ITCM2 が存在する場合
11 ITCM3_RE ITCM3 の回復可能な (1 ビット ) ECC エラー なし ITCM3 が存在する場合
12 ITCM3_UE ITCM3 の回復不可能な (2 ビット ) ECC エラー 致命的に近い ITCM3 が存在する場合
13 DCTAG_RE データキャッシュタグ RAM の回復可能な (1 ビット ) ECC エラー なし データキャッシュが存在する場合
14 DCTAG_UE データキャッシュタグ RAM の回復不可能な (2 ビット ) ECC エラー 致命的に近い データキャッシュが存在する場合
15 DCDAT_RE データキャッシュ・データ RAM のデータ回復可能な ( ダーティーラインを持つ 1 ビット、クリーンラインを持つ 2 ビットまたは 3 ビット ) ECC エラー。ダーティーラインのライトバック中に見つかった回復可能なエラーを除外します。 なし データキャッシュが存在する場合
16 DCDAT_UE データキャッシュ・データ RAM のデータ回復不可能な ( ダーティーラインを持つ 2 ビット ) ECC エラー。ダーティーラインのライトバック中に見つかった回復不可能なエラーを除外します。 致命的に近い データキャッシュが存在する場合
17 DCWB_RE データキャッシュ・データ RAM またはダーティーラインのライトバック中のビクティムライン・バッファー RAM の回復可能な (1 ビット ) ECC エラー なし データキャッシュが存在する場合
18 DCWB_UE データキャッシュ・データ RAM またはダーティーラインのライトバック中のビクティムライン・バッファー RAM の回復不可能な (2 ビット ) ECC エラー 致命的に近い データキャッシュが存在する場合
19 TLB_RE TLB RAM (TLB のハードウェア読み出し ) の回復可能な (1 ビット ) ECC エラー なし MMU が存在する場合
20 TLB_UE TLB RAM (TLB のハードウェア読み出し ) の回復不可能な (2 ビット ) 致命的な可能性あり MMU が存在する場合
21 TLB_SW TLB ソフトウェア読み出しのソフトウェアがトリガーする (1、2 または 3 ビット ) ECC エラー 致命的な可能性あり MMU が存在する場合
22 DTCM0_RE DTCM0 の回復可能な (1 ビット ) ECC エラー なし DTCM0 が存在する場合
23 DTCM0_UE DTCM0 の不可能な (2 ビット ) ECC エラー 致命的に近い DTCM0 が存在する場合
24 DTCM1_RE DTCM1 の回復可能な (1 ビット ) ECC エラー なし DTCM1 が存在する場合
25 DTCM1_UE DTCM1 の回復不可能な (2 ビット) ECC エラー 致命的に近い DTCM1 が存在する場合
26 DTCM2_RE DTCM2 の回復可能な (1 ビット ) ECC エラー None DTCM2 が存在する場合
27 DTCM2_UE DTCM2 の回復不可能な (2 ビット ) ECC エラー 致命的に近い DTCM2 が存在する場合
28 DTCM3_RE DTCM3 の回復可能な (1 ビット ) ECC エラー なし DTCM3 が存在する場合
29 DTCM3_UE DTCM3 の回復不可能な (3 ビット ) ECC エラー 致命的に近い DTCM3 が存在する場合