Agilex™ 7 エンベデッド・メモリー・ユーザーガイド

ID 683241
日付 12/17/2024
Public
ドキュメント目次

2.5. メモリーブロックの誤り訂正コード (ECC) のサポート

ECC は、メモリーの出力でデータエラーの検出と訂正を行います。

M20K ブロックと eSRAM ブロックでのみ ECC の機能をサポートしています。

ECC の機能を使用する場合は、次の機能を使用することができません。

  • バイト・イネーブル
  • コヒーレント読み出し
  • 混合データ幅

M20K ブロック

M20K ブロックの場合、ECC は、シングルエラーの訂正、ダブル隣接エラーの訂正、トリプル隣接エラーの訂正を 32 ビット・ワードで実行します。ただし、ECC では、隣接しない 2 ビット以上のエラーの検出または訂正を保証することができません。

M20K ブロックには、×32 幅のシンプル・デュアルポート・モードの場合の ECC に対するサポートが組み込まれています。

  • ECC の機能を使用すると、M20K は、ECC を使用しないシンプル・デュアルポート・モードに比べて動作が遅くなります。ただし、出力デコーダーの前にオプションの ECC パイプライン・レジスターを有効にすることで、1 サイクルのレイテンシーが追加される代わりに、パイプラインを使用しない ECC モードと比べて、より高い性能を実現することができます。
  • e 信号 (エラー) と ue 信号 (訂正不可能なエラー) の 2 つの ECC ステータスフラグ信号は、M20K の ECC のステータスを示します。ステータスフラグは、メモリーブロックからの通常の出力の一部です。

eSRAM ブロック

eSRAM ブロックの場合、ECC は、シングルエラーの訂正とダブルエラーの検出を 64 ビット・ワードで実行します。

eSRAM ブロックには、×64 幅のシンプル・デュアルポート・モードの場合の ECC に対するサポートが組み込まれています。
  • p{0..3}_eccflags[1] (エラー訂正済み) と p{0..3}_eccflags[0] (エラー検出あり) の 2 つの ECC ステータスフラグ信号は、eSRAM の ECC のステータスを示します。