インテル® Agilex™ ハード・プロセッサー・システムのテクニカル・リファレンス・マニュアル

ID 683567
日付 1/19/2023
Public
ドキュメント目次

10.4.7. ECCコントローラーの初期化とコンフィグレーション

ECCレジスター・インターフェイスがリセットを終了してアイドル状態に入っている場合、またはIPがリセットに入っている場合に、メモリーの初期化およびECCの診断を行うことができます。ECCが有効になっているメモリーにアクセスするペリフェラルでは、ペリフェラル・メモリーを使用する前にハードウェアの初期化を行う必要があります。
注: ハードウェアの初期化中に、ソフトウェアでメモリーへの読み出しまたは書き込みアクセスを実行しないでください。
ECCコントローラーを初期化し、コンフィグレーションする手順は次のとおりです。
  1. システム・マネージャーのecc_intmask_setレジスターで割り込みマスクを設定し、ECCコントローラーのERRINTENレジスターで割り込みを無効にすることで、ECC割り込みをオフにします。
  2. CTRLレジスターのECC_ENビットがクリアされ、ECCの検出訂正ロジックが無効になっていることを確認します。
  3. CTRLレジスターのINITxビットを設定し、ECCコントローラーのメモリー初期化ブロックを介したメモリーの初期化を有効にします。メモリーがデュアルポートの場合、初期化は両方のポートで行う必要があります。ECCの構造のセクションを参照し、初期化するメモリータイプを特定します。
  4. INITSTATレジスターのINITCOMPLETExビットが設定された後に、必要に応じてシングルビット、カウント、または比較一致の割り込みをコンフィグレーションします。ECCコントローラーとシステム・マネージャーで、ECC割り込みを有効にします。割り込みを有効にする方法については、ECCコントローラーの割り込みのセクション、およびシステム・マネージャーの章を参照してください。

これらの手順が完了すると、通常のアクセスを行うことができます。

ECCコントローラーが有効になっている場合

  • ECCコントローラーは、データがRAMに書き込まれるたびにECCビットを書き込みます。
  • エラー割り込みの要求は、Interrupt Mode (INTMODE) レジスターで有効にすることができます。
  • データのエラーが検出され、訂正が試行されます。

ECCの計算は、有効なRAMアクセスがある場合にのみ行うことができます。