[go: up one dir, main page]

JP2013161151A - メモリ装置及びメモリパトロールによるデータ化け回避方法 - Google Patents

メモリ装置及びメモリパトロールによるデータ化け回避方法 Download PDF

Info

Publication number
JP2013161151A
JP2013161151A JP2012020658A JP2012020658A JP2013161151A JP 2013161151 A JP2013161151 A JP 2013161151A JP 2012020658 A JP2012020658 A JP 2012020658A JP 2012020658 A JP2012020658 A JP 2012020658A JP 2013161151 A JP2013161151 A JP 2013161151A
Authority
JP
Japan
Prior art keywords
data
request
patrol
cache
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012020658A
Other languages
English (en)
Other versions
JP5916204B2 (ja
Inventor
Tomoko Mikami
友子 三神
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Computertechno Ltd
Original Assignee
NEC Computertechno Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP2012020658A priority Critical patent/JP5916204B2/ja
Publication of JP2013161151A publication Critical patent/JP2013161151A/ja
Application granted granted Critical
Publication of JP5916204B2 publication Critical patent/JP5916204B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

【課題】少ないハードウェア量で容易に不正アクセスに対する問題であるデータ化けを回避することができるメモリ装置及びメモリパトロールによるデータ化け回避方法を得る。
【解決手段】キャッシュ13のステータス14にパトロールフラグ15を設けて、パトロールリクエストにより登録されたデータであることを認識できるようにした。また、キャッシュ13から予備メモリ36に書き戻す通常の機能を流用して、不正に通常リクエストがキャッシュ13内のパトロールリクエストにより登録されたデータに発行された場合に、そのデータが使用される前に予備メモリ36に書き戻すようにした。これにより、通常リクエストが予備メモリ36に発行される不正アクセスを容易に識別して処理することができ、データ化けの課題を回避することができる。
【選択図】図1

Description

本発明は、メモリ装置及びメモリパトロールによるデータ化け回避方法に関する。
プロセッサから発行されるリード(read)リクエストやライト(write)リクエストなどの通常リクエストが、予備メモリに発行された場合、不正アクセスとして処理されることになるが、パトロール機能によってキャッシュにデータが登録されたタイミングで発行されると、その通常リクエストを正常に扱ってしまう場合がある。このような場合が生ずると、データ化け発生の可能性が考えられる。
前述したパトロール機能とは、一定期間に全主記憶のメモリ空間に対してリードを行い、ECC(Error Check and Correct memory)による訂正可能エラーを検出すると、データを訂正して正常なデータを書き戻す機能である。メモリ内のデータは、ECCのような訂正可能なコードと共に格納されており、パトロール機能は、メモリ内のデータが訂正不可能なビット化けになる前に、定期的にデータにアクセスすることで訂正可能なビット化けのうちに訂正して正常なデータに戻す。
ここで、通常リクエストの不正アクセスについて、図3に示すメモリ装置を参照して説明する。図3に示すメモリ装置29は、メモリパトロール発行部31、リクエスト発行部32、キャッシュ33、メモリコントロール35及び予備メモリ36を備える。キャッシュ33にはリクエストされたデータが登録されているか否かを示すステータス34の情報が記録されている。メモリパトロール発行部31からパトロールリクエストがキャッシュ33に発行されると、キャッシュ33におけるパトロールリクエストの示すアドレスについてのステータス34が索引される。そして、キャッシュ33に対象のデータが登録されていれば、パトロールリクエストの処理が完了となり、対象のデータが登録されていなければ、メモリコントロール35を経由してパトロール対象の予備メモリ36からデータが読み出され、キャッシュ33に登録される。メモリパトロール動作後、リクエスト発行部32から誤って通常リクエストが予備メモリ36に発行された場合、該通常リクエストがキャッシュ33においてパトロールリクエストにより登録されているデータにヒットし、不正アクセスと認識されないままリクエスト発行部32に正常リプライが返却されて正常に処理される。
メモリコントロール35には、予備メモリ36に通常リクエストが発行された場合に、不正アクセスを検出する機能があるが、パトロールリクエストによりキャッシュ33にデータが登録されているタイミングであるとメモリコントロール35まで通常リクエストが発行されないため、不正アクセスが検出されない。即ち、キャッシュ33にパトロール実行対象であったデータが登録されているときに、通常リクエストが誤って予備メモリ空間のパトロールと同じデータに対して発行されると、キャッシュ33にあるデータが取得されてリクエスト発行部32へ正常リプライが返却されてしまう。この結果、予備メモリ空間に通常リクエストが発行されたという不正な動作が見逃される。このようなことが生ずると、リクエスト発行部32はパトロール機能により訂正されていないデータを用いて処理を行ってしまう可能性があり、データ化け発生の可能性が生ずる。
図4に示すメモリ装置40は、通常リクエストの不正アクセスを検出可能としたものである。同図において、キャッシュ43に予備メモリ空間のレンジを保持するレンジレジスタ45と、キャッシュ43内において不正アクセスが検出された場合に、キャッシュ43からリクエスト発行部32へエラーリプライを返却するためのエラー伝達回路46とを備える。レンジレジスタ45は、予備メモリ空間のレンジ内のアドレスにリクエスト発行部32から通常リクエストが誤って発行された場合に、キャッシュ43内で不正アクセスとして検出できるように設けられたものである。
レンジレジスタ45とエラー伝達回路46により、リクエスト発行部32から通常リクエストが誤って予備メモリ空間に発行されたとしても、キャッシュ43内に設けられた予備メモリ空間のアドレスを設定したレンジレジスタ45にヒットするので、キャッシュ43内で不正アクセスが検出される。不正アクセスが検出されると、エラー伝達回路46を通じてリクエスト発行部42へエラーリプライが返却される。予備メモリ空間に通常リクエストが発行されたという不正な動作を検出することで、データ化けが回避される。
なお、ソフトエラーを訂正する方法として、メモリパトロール方法を使用した一例として、例えば特許文献1,2に記載されたものがある。特許文献1に記載されたメモリパトロール方式は、例えば、8バイトデータ毎にSEC−DED(1ビットエラー訂正・2ビットエラー検出)のECCコードで保証する。メモリパトロールが起動された場合、RAMBLEからのデータのリード→リードしたデータのECCコードの検査と訂正→チェックビット(データ保証ビット)の生成→RAMへの書き戻しの一連の動作を繰り返す。特許文献2に記載されたメモリパトロール方式は、パトロール主制御部がパトロールを起動すると、リード命令発生部がアドレスカウンタをカウントアップしつつパトロール単位分のリード命令を連続して出力する。このリード命令は、メモリ制御部を経てメモリ部へ伝達され、リードデータが取り出される。リードデータはECC回路で検査され、訂正可能エラーが無かった場合は、パトロール処理を終了する。訂正可能エラーがあった場合は、リード命令が完了した後に、訂正命令発生部へ起動をかける。訂正命令発生部では、まずアドレスカウンタをパトロール単位の先頭アドレスまで巻き戻し、その後、カウントアップしつつパトロール単位分の訂正命令を実行する。
特開2009−116398号公報 特開2000−010871号公報
ここで、図4に示すような回路構成では、不正アクセスに対する問題を回避できるものの、追加するハードウェアが多くなってしまうことや、そのハードウェアの制御が複雑となってしまうことから、少ないハードウェア量で容易に不正アクセスに対する問題であるデータ化けを回避することができないという課題がある。
上述した特許文献1,2には、上記課題を解決できる記述は見当たらない。
本発明は上述の課題を解決することのできるメモリ装置及びメモリパトロールによるデータ化け回避方法を提供することを目的とする。
本発明のメモリ装置は、通常リクエストを発行するリクエスト発行部と、チェック及び訂正を目的とするデータに対してパトロールリクエストを発行するメモリパトロール発行部と、予備メモリと、キャッシュ内にデータが登録されていることを示すステータスを有すると共に、前記キャッシュ内のデータが前記パトロールリクエストにより登録されたデータか前記通常リクエストにより登録されたデータかを識別するためのパトロールフラグを有するキャッシュと、を備えた。
本発明は、少ないハードウェア量で容易に不正アクセスに対する問題であるデータ化けを回避することができる。
本発明の一実施の形態に係るメモリ装置の概略構成を示すブロック図 図1のメモリ装置の動作を説明するためのシーケンス図 通常リクエストの不正アクセスを説明するためのメモリ装置の概略構成を示すブロック図 通常リクエストの不正アクセスを検出可能としたメモリ装置の概略構成を示すブロック図
以下、本発明を実施するための好適な実施の形態について、図面を参照して詳細に説明する。
図1は、本発明の一実施の形態に係るメモリ装置の概略構成を示すブロック図である。なお、同図において、前述した図1と共通する部分には同一の符号を付けている。本実施の形態に係るメモリ装置1は、メモリパトロール発行部31、リクエスト発行部32、キャッシュ13、メモリコントロール35及び予備メモリ36を備える。
メモリパトロール発行部31は、チェック及び訂正を目的とするデータに対してパトロールリクエストを発行する。ここで、本実施形態のメモリパトロール発行部31から発行されるパトロールリクエストは、エラーのあるデータを更新して正常な値にするためのリクエストである。リクエスト発行部32は、通常のリードやライト等のリクエストを発行する。
キャッシュ13には、各アドレスについてキャッシュ13内にデータが登録されていることを示すステータス14が記録されている。またキャッシュ13にはキャッシュ13内のデータがメモリパトロール発行部31で発行されたパトロールリクエストに基づいて登録されたデータかリクエスト発行部32で発行された通常リクエストに基づいて登録されたデータかを各アドレスについて識別するためのパトロールフラグ15が記録されている。また、キャッシュ13には、メモリパトロール発行部31で発行されたパトロールリクエストにより登録されたデータに対して、リクエスト発行部32から通常リクエストが発行された場合に、キャッシュ13が持つデータ掃き出し機能(既存のキャッシュが普通に持っている機能)を利用して、キャッシュ13内のデータ(パトロールリクエストにより登録されたデータ)を予備メモリ36に書き戻すデータ書き戻し部16も設けられている。なお、データ書き戻し部16は、図4に図示していないが従来から備えられている機能である。
メモリパトロール発行部31から発行されたパトロールリクエストは、キャッシュ13に届くと、キャッシュ13内の制御部がステータス14を索引する。そしてキャッシュ13内の制御部は、キャッシュ13にアクセス対象のデータが存在する場合はパトロールリクエストの動作を終了する。これに対し、キャッシュ13にアクセス対象のデータが存在しない場合は、キャッシュ13内の制御部は、キャッシュ13から予備メモリ36にリードリクエストを発行する。
メモリコントロール35は、予備メモリ36へ通常リクエストが発行された場合に、不正アクセスを検出する機能を予め備えている。しかし、受信したリクエストがパトロールリクエストによる予備メモリ36へのリードリクエストであるため、不正アクセスで無いと判定して処理する。そしてメモリコントロール35はパトロールリクエストによる予備メモリ36へのリードリクエストを予備メモリへ転送し、その結果予備メモリ36からリードデータが返却されると、当該リードデータのキャッシュ登録時に、そのリードデータが示すアドレスについてのパトロールフラグ15をセットしてキャッシュ13に登録する。これにより、キャッシュ13内のデータがパトロールリクエストによって登録されたと識別できるようになる。その後、リクエスト発行部32から通常リクエストが発行されることで、予備メモリ36に、訂正されたデータが書き戻され、パトロールとしての動作が完了する。
図2は、本実施の形態に係るメモリ装置1の動作を説明するためのシーケンス図である。同図においては、まず、メモリパトロール発行部31から発行されたパトロールリクエスト40に基づいて、予備メモリ36から読み出されたデータがキャッシュ13に登録されており、また、当該パトロールリクエスト40に基づいて登録されたデータのアドレスについて、同時にパトロールフラグ15が登録されているものとする。そして、処理の不具合等により、本来ならば発行されるはずのない予備メモリ36の空間への通常リクエスト41がリクエスト発行部32から発行されて、キャッシュ13でパトロールフラグ15が登録されたデータにヒットした場合、キャッシュ13の制御部は通常リクエスト41を一旦待機させる(42)。そして、通常リクエスト41が待機されている間に、キャッシュ13の制御部は、通常リクエスト41によって参照されようとしたデータを、強制掃き出し処理によってメモリコントロール35を介して予備メモリ36に書き戻す(43)。
その後、キャッシュ13の制御部は、待機させた通常リクエスト41を実行し、当該通常リクエスト41が示す参照データのアドレスについてのステータスを索引すると、通常リクエスト41が取りに来たデータがキャッシュ13内に存在しないためミスヒットと判定する(44)。これにより、キャッシュ13の制御部は、メモリコントロール35を経由して予備メモリ36までデータを取りに行くための通常リクエスト45を発行する。するとメモリコントロール35は、予備メモリ空間へ通常リクエスト45が発行された場合に不正アクセスと認識する機能を備えているので、通常リクエスト45を不正アクセスであると認識しキャッシュ13へエラーリプライ47を返却する。するとキャッシュ13の制御部は、エラーリプライ47をリクエスト発行部32へ返却する。
このように本実施の形態に係るメモリ装置1によれば、キャッシュ13に各アドレスについてのステータス14とパトロールフラグ15を記録して、パトロールリクエストにより登録されたデータであることを認識できるようにしたので、通常リクエストがパトロールリクエストにより登録されたデータを誤って使用することを回避できる。また、キャッシュ13から予備メモリ36に書き戻す通常の機能を流用して、不正に通常リクエストがキャッシュ13内のパトロールリクエストにより登録されたデータに発行された場合に、その通常リクエストを待機させ、そのリクエストで要求されるデータが使用される前に予備メモリ36に書き戻すようにした。そしてこの時メモリコントロール35の機能によって発行されたエラーリプライをキャッシュ13がリクエスト発行部32へ返却するようにした。これにより、エラーリプライを返却するなどのエラー処理を行う回路をキャッシュ13に新規に設けることなく、既存でメモリコントロール35が備えているエラー処理により、通常リクエストが予備メモリ36に発行される不正アクセスを容易に識別してエラー処理することができ、データ化けの課題を回避することができる。
なお、本実施の形態に係るメモリ装置1において、パトロールリクエストを予備メモリ空間に発行することで、予備メモリ36の故障を事前に検出するようにしてもよい。このようにすることで、予備メモリ36の故障によるデータ化けを未然に防ぐことができる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)通常リクエストを発行するリクエスト発行部と、
チェック及び訂正を目的とするデータに対してパトロールリクエストを発行するメモリパトロール発行部と、
予備メモリと、
キャッシュ内にデータが登録されていることを示すステータスを有すると共に、前記キャッシュ内のデータが前記パトロールリクエストにより登録されたデータか前記通常リクエストにより登録されたデータかを識別するためのパトロールフラグを有するキャッシュと、
を備えたメモリ装置。
(付記2)前記メモリパトロール発行部で発行されたパトロールリクエストにより登録されたデータに対して前記リクエスト発行部から通常リクエストが発行された場合に、前記キャッシュが持つデータ掃き出し機能を利用して、前記キャッシュ内の前記パトロールリクエストにより登録されたデータを前記予備メモリに書き戻すデータ書き戻し部を備えた付記1に記載のメモリ装置。
(付記3)前記データ書き戻し部は、前記キャッシュに設けられた付記2に記載のメモリ装置。
(付記4)前記キャッシュと前記予備メモリとの間のデータ制御を行い、前記通常リクエストを不正アクセスと認識した場合には、前記キャッシュを通じてエラーリプライを前記リクエスト発行部へ返却するメモリコントロールを備えた付記1乃至付記3のいずれか1つに記載のメモリ装置。
(付記5)キャッシュ内にデータが登録されている場合に、前記キャッシュ内のデータがメモリパトロール機能により登録されたデータか通常リクエストにより登録されたデータかを識別し、パトロール機能により登録されたデータに対して、通常リクエストが発行された場合、キャッシュが持つデータ掃き出し機能を利用して、前記キャッシュ内のパトロール機能により登録されたデータを予備メモリへ書き戻すデータ化け回避方法。
(付記6)前記通常リクエストが不正アクセスである場合、通常リクエストを発行するリクエスト発行部へエラーリプライを返却する付記5に記載のデータ化け回避方法。
(付記7)パトロールリクエストを予備メモリ空間に発行することで前記予備メモリの故障を検出する付記5又は付記6に記載のデータ化け回避方法。
本発明は、RAM(Randum Access Memory)等のデータ書き込み/読み出しが可能な半導体素子への適用が可能である。
1 メモリ装置
13 キャッシュ
14 ステータス
15 パトロールフラグ
16 データ書き戻し部
31 メモリパトロール発行部
32 リクエスト発行部
35 メモリコントロール
36 メモリ

Claims (7)

  1. 通常リクエストを発行するリクエスト発行部と、
    チェック及び訂正を目的とするデータに対してパトロールリクエストを発行するメモリパトロール発行部と、
    予備メモリと、
    キャッシュ内にデータが登録されていることを示すステータスを有すると共に、前記キャッシュ内のデータが前記パトロールリクエストにより登録されたデータか前記通常リクエストにより登録されたデータかを識別するためのパトロールフラグを有するキャッシュと、
    を備えたメモリ装置。
  2. 前記メモリパトロール発行部で発行されたパトロールリクエストにより登録されたデータに対して前記リクエスト発行部から通常リクエストが発行された場合に、前記キャッシュが持つデータ掃き出し機能を利用して、前記キャッシュ内の前記パトロールリクエストにより登録されたデータを前記予備メモリに書き戻すデータ書き戻し部を備えた請求項1に記載のメモリ装置。
  3. 前記データ書き戻し部は、前記キャッシュに設けられた請求項2に記載のメモリ装置。
  4. 前記キャッシュと前記予備メモリとの間のデータ制御を行い、前記通常リクエストを不正アクセスと認識した場合には、前記キャッシュを通じてエラーリプライを前記リクエスト発行部へ返却するメモリコントロールを備えた請求項1乃至請求項3のいずれか1項に記載のメモリ装置。
  5. キャッシュ内にデータが登録されている場合に、前記キャッシュ内のデータがメモリパトロール機能により登録されたデータか通常リクエストにより登録されたデータかを識別し、パトロール機能により登録されたデータに対して、通常リクエストが発行された場合、キャッシュが持つデータ掃き出し機能を利用して、前記キャッシュ内のパトロール機能により登録されたデータを予備メモリへ書き戻すデータ化け回避方法。
  6. 前記通常リクエストが不正アクセスである場合、通常リクエストを発行するリクエスト発行部へエラーリプライを返却する請求項5に記載のデータ化け回避方法。
  7. パトロールリクエストを予備メモリ空間に発行することで前記予備メモリの故障を検出する請求項5又は請求項6に記載のデータ化け回避方法。
JP2012020658A 2012-02-02 2012-02-02 メモリ装置及びメモリパトロールによるデータ化け回避方法 Expired - Fee Related JP5916204B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012020658A JP5916204B2 (ja) 2012-02-02 2012-02-02 メモリ装置及びメモリパトロールによるデータ化け回避方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012020658A JP5916204B2 (ja) 2012-02-02 2012-02-02 メモリ装置及びメモリパトロールによるデータ化け回避方法

Publications (2)

Publication Number Publication Date
JP2013161151A true JP2013161151A (ja) 2013-08-19
JP5916204B2 JP5916204B2 (ja) 2016-05-11

Family

ID=49173370

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012020658A Expired - Fee Related JP5916204B2 (ja) 2012-02-02 2012-02-02 メモリ装置及びメモリパトロールによるデータ化け回避方法

Country Status (1)

Country Link
JP (1) JP5916204B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009048224A (ja) * 2007-08-13 2009-03-05 Fujitsu Ltd メモリコントローラ及びプロセッサシステム
JP2010079765A (ja) * 2008-09-29 2010-04-08 Renesas Technology Corp 情報処理装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009048224A (ja) * 2007-08-13 2009-03-05 Fujitsu Ltd メモリコントローラ及びプロセッサシステム
JP2010079765A (ja) * 2008-09-29 2010-04-08 Renesas Technology Corp 情報処理装置

Also Published As

Publication number Publication date
JP5916204B2 (ja) 2016-05-11

Similar Documents

Publication Publication Date Title
US9880896B2 (en) Error feedback and logging with memory on-chip error checking and correcting (ECC)
US9830218B2 (en) Cache memory with fault tolerance
US20140068208A1 (en) Separately stored redundancy
CN207882889U (zh) 存储器系统和电子系统
CN103026342B (zh) 用于验证存储器器件完整性的方法和系统
US20080301528A1 (en) Method and apparatus for controlling memory
JP2010009102A (ja) キャッシュメモリ、コンピュータシステム、及びメモリアクセス方法
CN105788648A (zh) 基于异构混合内存的nvm坏块识别处理及纠错方法和系统
GB2582097A (en) Protecting in-memory configuration state registers
US8949694B2 (en) Address error detection
US8689079B2 (en) Memory device having multiple channels and method for accessing memory in the same
US20160313936A1 (en) Double writing map table entries in a data storage system to guard against silent corruption
US9086990B2 (en) Bitline deletion
KR101512927B1 (ko) 비휘발성 메모리의 페이지 관리 방법 및 장치
US8533560B2 (en) Controller, data storage device and program product
WO2015165202A1 (zh) 一种基于汉明码存取数据的方法及集成随机存取存储器
CN103942119A (zh) 一种存储器错误的处理方法和装置
CN110348245B (zh) 基于nvm的数据完整性保护方法、系统、装置及存储介质
CN112181712B (zh) 一种提高处理器核可靠性的方法及装置
US20050229052A1 (en) Method, system and program product for autonomous error recovery for memory devices
JP5916204B2 (ja) メモリ装置及びメモリパトロールによるデータ化け回避方法
US20230315302A1 (en) Complete And Fast Protection Against CID Conflict
US8359528B2 (en) Parity look-ahead scheme for tag cache memory
US10228995B2 (en) Last writers of datasets in storage array errors
CN110597656B (zh) 一种二级缓存标记阵列的校验单错处理方法

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20140804

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150108

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150812

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150908

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151021

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160308

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160404

R150 Certificate of patent or registration of utility model

Ref document number: 5916204

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees