JP6866785B2 - プロセッサおよびメモリアクセス方法 - Google Patents

プロセッサおよびメモリアクセス方法 Download PDF

Info

Publication number
JP6866785B2
JP6866785B2 JP2017127003A JP2017127003A JP6866785B2 JP 6866785 B2 JP6866785 B2 JP 6866785B2 JP 2017127003 A JP2017127003 A JP 2017127003A JP 2017127003 A JP2017127003 A JP 2017127003A JP 6866785 B2 JP6866785 B2 JP 6866785B2
Authority
JP
Japan
Prior art keywords
memory
unit
storage area
error
address
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.)
Expired - Fee Related
Application number
JP2017127003A
Other languages
English (en)
Other versions
JP2019012305A (ja
Inventor
明夫 常世田
明夫 常世田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017127003A priority Critical patent/JP6866785B2/ja
Priority to US16/011,685 priority patent/US10649831B2/en
Publication of JP2019012305A publication Critical patent/JP2019012305A/ja
Application granted granted Critical
Publication of JP6866785B2 publication Critical patent/JP6866785B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0895Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • G06F11/1056Updating check bits on partial write, i.e. read/modify/write
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Memory System (AREA)
  • Detection And Correction Of Errors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

本発明は、プロセッサおよびメモリアクセス方法に関する。
SDRAM(Synchronous Dynamic Random Access Memory)等のメモリでは、メモリの内部で発生するノイズ等の影響により、メモリから読み出されるデータにエラーが発生する場合がある。発生したエラーは、メモリのアクセスを制御するメモリコントローラ等により訂正される。例えば、メモリコントローラは、メモリに割り当てられたアドレス空間毎にエラーを訂正した回数をカウントし、カウント値が閾値に達した場合、診断装置に障害通知を発行する(例えば、特許文献1、2参照)。また、メモリを監視するメモリ監視システムは、訂正可能なエラーが発生した場合にエラーを訂正し、エラーの発生頻度が所定の閾値を超えた場合、警報を発する(例えば、特許文献3参照)。
特開2012−108726号公報 特開2010−170462号公報 特開平10−55320号公報
訂正可能なエラーの発生は、訂正不可能なエラーの発生の予兆になる場合がある。このため、エラーを訂正した回数が所定の閾値に達したことを、訂正不可能なエラーが発生する予兆として検出することで、システムダウン等の重大な障害の発生が回避される。しかしながら、訂正可能なエラーの発生状況に基づいて、訂正不可能なエラーが発生しにくいアクセス動作をメモリに実行させる手法は提案されていない。
1つの側面では、本発明は、メモリ内で訂正不可能なエラーが発生することを抑止することを目的とする。
一つの実施態様では、複数の貫通電極を各々含む複数の貫通電極群と、複数の貫通電極群に接続される複数の記憶領域を有するメモリチップとを含むメモリのアクセスを制御するメモリコントローラを含むプロセッサにおいて、メモリコントローラは、メモリからデータを読み出す読み出しアクセス要求に対応してメモリから出力される応答に、データのエラーがメモリにより訂正されたことを示すエラー情報が含まれる場合であって、読み出しアクセス要求に含まれるアクセスアドレスにおいてデータのエラーが初めて訂正されたことを判定した場合、読み出しアクセス要求に含まれるアクセスアドレスをエラーアドレスとして出力するアドレスフィルタ部と、複数の貫通電極群の各々に対応する複数のカウンタを含み、受信したエラーアドレスが示す記憶領域に接続される貫通電極群に対応するカウンタのカウンタ値を更新するカウンタ部と、カウンタ値が所定の回数を超えたカウンタに対応する貫通電極群に接続される記憶領域を示す領域情報を出力する領域情報出力部と、領域情報出力部から出力される領域情報が示す記憶領域に対するアクセス要求と、領域情報出力部から出力される領域情報が示す記憶領域に隣接する記憶領域に対するアクセス要求とを所定の時間間隔を空けてメモリに出力する要求発行部とを有する。
1つの側面では、本発明は、メモリ内で訂正不可能なエラーが発生することを抑止することができる。
プロセッサおよびメモリアクセス方法の一実施形態を示す図である。 図1に示す情報処理装置の動作の一例を示す図である。 プロセッサおよびメモリアクセス方法の別の実施形態を示す図である。 図3に示すコマンド発行制御部の一例を示す図である。 図3に示すメモリ部の一例を示す図である。 図5に示すメモリ部に含まれる記憶領域群の配置の一例を示す図である。 図3に示す情報処理装置の動作の一例を示す図である。 図3に示す情報処理装置の動作の別の例を示す図である。 図3に示すアドレスフィルタ部の動作の一例を示す図である。 図3に示すカウンタ部の動作の一例を示す図である。 図3に示す領域情報出力部の動作の一例を示す図である。 図3に示すコマンド発行制御部の動作の一例を示す図である。 プロセッサおよびメモリアクセス方法の別の実施形態を示す図である。 図13に示すアドレスフィルタ部の動作の一例を示す図である。 図13に示すアドレスフィルタ部の動作の別の例を示す図である。
以下、図面を用いて実施形態を説明する。
図1は、プロセッサおよびメモリアクセス方法の一実施形態を示す。図1に示すプロセッサ10は、メモリ20のアクセスを制御するメモリコントローラ30を有する。プロセッサ10およびメモリ20は、例えば、サーバ等の情報処理装置のマザーボードに接続される。
例えば、メモリ20は、メモリチップMCと、メモリチップMCの動作を制御するロジックチップLCとを有する。メモリチップMCは、複数の記憶領域MR0−MR3を有する。なお、メモリ20が有するメモリチップMCの数は、1つに限定されず、メモリチップMCが有する記憶領域MRの数は、4つに限定されない。メモリチップMCとロジックチップLCとは、例えば、複数のTSV(Through Silicon Via)により互いに接続される。なお、メモリチップMCおよびロジックチップLCの半導体基板は、シリコン基板に限定されない。
各記憶領域MR0−MR3は、所定数のTSVを含む貫通電極群VG(VG0−VG3)によりロジックチップLCに接続される。TSVは、貫通電極の一例である。図1では、貫通電極群VGの末尾の数字は、貫通電極群VGに接続される記憶領域MRの末尾の数字と同じである。
例えば、メモリチップMC内でデータを保持するメモリセルに物理的な欠陥があり、欠陥があるメモリセルから読み出されたデータが訂正可能なエラーを含む場合、メモリ20は、データのエラーを訂正し、エラーを訂正したデータを含む応答を出力する。例えば、エラーは、ロジックチップLCにより訂正される。
記憶ノードが論理0に固定された不良メモリセルでは、不良メモリセルから読み出されるデータは論理0に固定される。このため、不良メモリセルに書き込んだ論理1のデータは保持されず、不良メモリセルから論理0のデータが常に読み出される。不良メモリセルに書き込んだ論理1のデータを不良メモリセルから読み出す場合、エラーは常に訂正されるため、物理的な欠陥があるメモリセルからデータを読み出す読み出しアクセス動作では、同一のアドレスADで発生するエラーが何度も訂正される。なお、不良メモリセルに書き込んだ論理0のデータを読み出す場合、論理0のデータが読み出されるため、エラーは訂正されない。
メモリチップMCに入出力されるデータ等の信号は、TSVを介して伝送されるため、TSVで発生するノイズの影響を受ける場合がある。例えば、メモリ20の製造工程等に起因するTSVの太さの変動または互いに隣接するTSV間の距離の変動等により、TSVに伝送される信号に含まれるノイズの大きさは変動する。メモリセルから読み出され、TSVに伝送されるデータの論理値がノイズにより反転し、訂正可能なエラーが発生した場合、メモリ20は、データのエラーを訂正して外部に出力する。
以下の説明では、隣接する貫通電極群VGに伝送される信号の影響によりノイズが発生しやすい貫通電極群VGは、対象貫通電極群VGと称され、対象貫通電極群VGに接続される記憶領域MRは、対象記憶領域MRと称される。対象貫通電極群VGに隣接する貫通電極群VGに伝送される信号の影響を受けて、対象貫通電極群VGにクロストーク等によるノイズが発生した場合、対象貫通電極群VGに伝送されるデータのエラーは発生しやすくなる。例えば、読み出しアクセス動作が実行される対象記憶領域MRに接続される対象貫通電極群VGのノイズが、隣接する貫通電極群VGに伝送される信号の影響を受けて大きくなると、対象記憶領域MRから読み出されたデータが破壊される場合がある。
隣接する貫通電極群VGからのクロストーク等によるノイズに起因して対象記憶領域MRで発生するエラーは、隣接する貫通電極群VGに伝送される信号のパターン等に依存するため、ランダムに発生しやすい。換言すれば、隣接する貫通電極群VGからのクロストーク等によるノイズに起因して発生するエラーが同一のアドレスADで複数回発生する確率は、メモリセル等の物理的な欠陥に起因して発生するエラーが同一のアドレスADで複数回発生する確率に比べて低い。
メモリコントローラ30は、アドレスフィルタ部32、カウンタ部34、領域情報出力部36、要求発行部38および応答制御部39を有する。アドレスフィルタ部32は、要求発行部38がメモリ20に発行した読み出しアクセス要求に対応してメモリ20から出力される応答RESを受信する。例えば、応答RESは、読み出しアクセス要求に含まれるアドレスADと、メモリ20から読み出されたデータDTと、データDTのエラーがメモリ20内で訂正されたか否かを示すエラー情報CE(Correctable Error)を含む。読み出しアクセス要求に含まれるアドレスADは、アクセスアドレスの一例である。
例えば、応答RESに含まれるデータDTがメモリ20内でエラーが訂正されたデータである場合、エラー情報CEは、論理1に設定される。応答RESに含まれるデータDTがメモリ20内でエラーを訂正されることなくメモリ20から出力された場合(エラーがなかった場合)、エラー情報CEは、論理0に設定される。
アドレスフィルタ部32は、応答RESに含まれるアドレスADにおいてデータDTのエラーが初めて訂正されたと判定した場合、応答RESに含まれるアドレスADをエラーアドレスERRAとしてカウンタ部34に出力する。すなわち、アドレスフィルタ部32は、メモリ20においてエラーが訂正された領域を示すエラーアドレスERRAを出力する。また、アドレスフィルタ部32は、応答RESに含まれるアドレスADにおいてデータDTのエラーが初めて訂正されたと判定した場合、応答RESに含まれるアドレスADを保持領域32aに格納する。保持領域32aは、アドレスADを保持する複数のエントリを有し、応答RESに含まれるアドレスADにおいてデータDTのエラーが初めて訂正されたか否かの判定に使用される。
アドレスフィルタ部32は、論理1のエラー情報CEを含む応答RESに含まれるアドレスADを保持領域32aが保持していない場合、アドレスADにおいてデータDTのエラーが初めて訂正されたと判定し、エラーアドレスERRAをカウンタ部34に出力する。換言すれば、アドレスフィルタ部32は、論理1のエラー情報CEを含む応答RESに含まれるアドレスADを保持領域32aが保持していない場合、ノイズに起因する訂正可能なエラーが発生したと判定し、エラーアドレスERRAをカウンタ部34に出力する。
一方、アドレスフィルタ部32は、論理1のエラー情報CEを含む応答RESに含まれるアドレスADを保持領域32aが保持している場合、アドレスADにおいてデータDTのエラーが過去に訂正されたと判定する。この場合、アドレスフィルタ部32は、カウンタ部34へのエラーアドレスERRAの出力を抑止する。換言すれば、アドレスフィルタ部32は、論理1のエラー情報CEを含む応答RESに含まれるアドレスADが保持領域32aに保持されている場合、物理的な欠陥に起因する訂正可能なエラーが発生したと判定し、エラーアドレスERRAの出力を抑止する。なお、アドレスフィルタ部32は、同一のアドレスADを保持領域32aの複数の領域に保持しない。
アドレスフィルタ部32により、物理的な欠陥に起因して発生する訂正可能なエラーのアドレスADを除外して、ノイズ等に起因してランダムに発生する訂正可能なエラーのアドレスADに対応するエラーアドレスERRAをカウンタ部34に出力することができる。すなわち、アドレスフィルタ部32は、物理的な欠陥に起因して発生する訂正可能なエラーのエラーアドレスERRAを通過させずに、ノイズ等に起因してランダムに発生する訂正可能なエラーのエラーアドレスERRAを通過させるフィルタとして機能する。
上述したように、アドレスフィルタ部32は、応答RESに含まれるアドレスADにおいてデータDTのエラーが初めて訂正されたと判定した場合、エラーアドレスERRAをカウンタ部34に出力する。このため、物理的な欠陥に起因して発生した訂正可能なエラーのアドレスADが初めて検出された場合にも、エラーアドレスERRAはカウンタ部34に出力される。しかしながら、後述するように、カウンタ部34の各カウンタ34aが保持するエラーの訂正回数は、領域情報出力部36の比較器36aにより閾値VT(例えば、255回)と比較される。このため、カウンタ部34が保持するエラーの訂正回数が、物理的な欠陥に起因して発生したエラーの訂正回数を含む場合にも、領域情報出力部36および要求発行部38の動作に与える影響はほとんどない。
カウンタ部34は、貫通電極群VG(VG0−VG3)の各々に対応する複数のカウンタ34aを有する。カウンタ部34は、アドレスフィルタ部32からエラーアドレスERRAを受信する毎に、受信したエラーアドレスERRAが示す記憶領域MRに接続された貫通電極群VGに対応するカウンタ34aのカウンタ値を更新する。各カウンタ34aのカウンタ値は、貫通電極群VGに接続された記憶領域MR毎のエラーの訂正回数を示す。例えば、カウンタ部34は、アドレスフィルタ部32から受信したエラーアドレスERRAが記憶領域MR0を示す場合、記憶領域MR0に接続された貫通電極群VG0に対応するカウンタ34aのカウンタ値を”1”増加させる。また、カウンタ部34は、各カウンタ34aのカウンタ値を領域情報出力部36に出力する。
領域情報出力部36は、カウンタ部34の4つのカウンタ34aにそれぞれ対応する4つの比較器36aと、所定の回数を示す閾値VTを保持する閾値保持部36bとを有する。すなわち、領域情報出力部36は、貫通電極群VG0−VG3(すなわち、記憶領域MR0−MR3)にそれぞれ対応する4つの比較器36aを有する。特に限定されないが、閾値VTが示す所定の回数は、例えば、255回である。
各比較器36aは、カウンタ部34において対応するカウンタ34aが保持するカウンタ値と閾値VTとを比較する。各比較器36aは、カウンタ値が閾値VTを超える場合、比較器36aに対応する貫通電極群VGに接続された記憶領域MRを示す領域情報MRINF(MRINF0−MRINF3のいずれか)を要求発行部38に出力する。各比較器36aは、領域情報MRINFを出力した場合、領域情報MRINFの出力状態を維持する。一方、各比較器36aは、出力回数が閾値VT以下の場合、領域情報MRINFを出力しない。領域情報MRINFにより示される記憶領域MRは、ノイズが発生しやすい対象貫通電極群VGに接続された対象記憶領域MRである。
カウンタ部34が受信するエラーアドレスERRAは、物理的な欠陥に起因して発生する訂正可能なエラーのアドレスADがほぼ除外されているため、各カウンタ34aのカウンタ値は、物理的な欠陥に起因して発生したエラーの訂正回数をほとんど含まない。このため、領域情報出力部36は、ノイズに起因してランダムに発生したエラーの訂正回数と、閾値VTとを比較することができ、ノイズに起因してランダムなエラーが発生しやすい記憶領域MRを正確に判定することができる。
要求発行部38は、プロセッサ10が有する図示しないキャッシュメモリ等から発行されるメモリアクセス要求MREQ0を受信し、受信したメモリアクセス要求MREQ0をメモリアクセス要求MREQとしてメモリ20に出力する。要求発行部38は、メモリアクセス要求MREQ0を受信した順に保持する図示しない要求キューを有する。
要求発行部38は、メモリアクセス要求MREQ0に含まれるアドレスADにより示される記憶領域MRが、領域情報出力部36が出力する領域情報MRINFのいずれかにより示される対象記憶領域MRであるか否かを判定する。ここで、メモリアクセス要求MREQは、アクセス要求の一例であり、メモリ20からデータを読み出す読み出しアクセス要求、または、メモリ20にデータを書き込む書き込みアクセス要求のいずれかである。
メモリアクセス要求MREQ0に含まれるアドレスADが、対象記憶領域MRを示す場合、要求発行部38は、メモリアクセス要求MREQ0に対応するメモリアクセス要求MREQの出力を以下のように制御する。要求発行部38は、メモリアクセス要求MREQと、メモリアクセス要求MREQによるアクセス対象の対象記憶領域MRに隣接する記憶領域MRに対するメモリアクセス要求MREQとを所定の時間間隔を空けて出力する。
また、メモリアクセス要求MREQ0に含まれるアドレスADが、対象記憶領域MRを示さない場合、要求発行部38は、メモリアクセス要求MREQ0に対応するメモリアクセス要求MREQの出力を以下のように制御する。要求発行部38は、メモリアクセス要求MREQによるアクセス対象の対象記憶領域MRに対象記憶領域MRが隣接する場合、メモリアクセス要求MREQと、対象記憶領域MRに対するメモリアクセス要求MREQとを所定の時間間隔を空けて出力する。
例えば、所定の時間間隔は、メモリ20において、互いに隣接する記憶領域MRにおいて、メモリアクセス要求MREQに基づいてメモリ20が実行するメモリアクセス動作を重複させない時間間隔である。要求発行部38によるメモリアクセス要求MREQのメモリ20への出力タイミングの例は、図2に示される。メモリ20は、要求発行部38が出力するメモリアクセス要求MREQの受信に基づいて、記憶領域MRのいずれかにアクセスし、応答RESをメモリコントローラ30に出力する。なお、書き込みアクセス要求に対応する応答RESは、データDTおよびエラー情報CEを含まない。
応答制御部39は、メモリ20から受信する応答RESに含まれる情報に基づいて、メモリアクセス要求MREQ0に対する応答RESをキャッシュメモリに出力する。例えば、メモリアクセス要求MREQ0が読み出しアクセス要求の場合、応答制御部39は、応答RESに含まれるデータDTを、メモリアクセス要求MREQ0を識別する情報とともにキャッシュメモリに出力する。
図2は、図1に示す情報処理装置の動作の一例を示す。すなわち、図2は、メモリ20のアクセスを制御するメモリコントローラ30によるメモリアクセス方法の一例を示す。なお、図2の下側のかぎ括弧内に示す動作は、メモリアクセス要求をキャッシュメモリから受信する毎に、受信したメモリアクセス要求をメモリ20に出力する要求発行部を有するメモリコントローラを含む情報処理装置の動作の例を示す。
図2において、太枠で示す矩形は、エラーの訂正回数が閾値VTを超えた対象記憶領域MR(この例では、MR0)に対するメモリアクセス要求またはアクセス動作であることを示す。すなわち、領域情報出力部36は、対象記憶領域MR0に対応する領域情報MRINF0を出力し、他の対象記憶領域MR1−MR3に対応する領域情報MRINF1−MRINF3を出力しない。
例えば、メモリ20は、メモリアクセス要求に基づいて、メモリチップMCにアクセスするアクセス動作を4サイクル掛けて実行する。なお、メモリ20は、受信したメモリアクセス要求から順にアクセス動作を実行するものとする。符号RDは、読み出しアクセス要求または読み出しアクセス要求に基づいてメモリ20が実行する読み出しアクセス動作を示す。符号WRは、書き込みアクセス要求または書き込みアクセス要求に基づいてメモリ20が実行する書き込みアクセス動作を示す。
まず、プロセッサ10内のキャッシュメモリは、サイクルC1で記憶領域MR0に対する読み出しアクセス要求を出力し、サイクルC2で記憶領域MR1に対する書き込みアクセス要求を出力する(図2(a)、(b))。また、キャッシュメモリは、サイクルC3で記憶領域MR0に対する書き込みアクセス要求を出力し、サイクルC4で記憶領域MR3に対する書き込みアクセス要求を出力する(図2(c)、(d))。
サイクルC1で出力される読み出しアクセス要求は、エラーの訂正回数が閾値VTを超えた対象記憶領域MR0に対するアクセス要求である。対象記憶領域MR0に隣接する記憶領域MR1、MR2に対するアクセス動作が実行されていないため、要求発行部38は、対象記憶領域MR0に対するアクセス動作と記憶領域MR1、MR2に対するアクセス動作とが重複しないと判定する。このため、要求発行部38は、サイクルC2で記憶領域MR0に対する読み出しアクセス要求をメモリ20に出力する(図2(e))。メモリ20は、記憶領域MR0に対する読み出しアクセス要求に基づいて、サイクルC3−C6で読み出しアクセス動作を実行する(図2(f))。
サイクルC2で受信した書き込みアクセス要求は、読み出しアクセス動作を実行中の対象記憶領域MR0に隣接する記憶領域MR1に対するメモリアクセス要求である。このため、要求発行部38は、記憶領域MR0に対する読み出しアクセス要求に対して3サイクルのウエイトサイクルW3を挿入した後、サイクルC6で書き込みアクセス要求をメモリ20に出力する(図2(g))。サイクルC2で受信した書き込みアクセス要求がメモリ20に出力されるサイクルC6は、メモリ20による記憶領域MR0に対する読み出しアクセス動作が完了するサイクルである。
メモリ20は、記憶領域MR1に対する書き込みアクセス要求に基づいて、サイクルC7−C10で書き込みアクセス動作を実行する(図2(h))。ウエイトサイクルW3の挿入により、メモリ20は、対象記憶領域MR0の読み出しアクセス動作と、対象記憶領域MR0に隣接する記憶領域MR1の書き込みアクセス動作とを互いに重複することなく実行することができる。アクセス動作が重複しないため、対象記憶領域MR0のアクセス動作により対象貫通電極群VGに伝送される信号は、記憶領域MR1のアクセス動作により貫通電極群に伝送される信号の影響を受けない。したがって、対象貫通電極群VGに隣接する貫通電極群VGに伝送される信号の影響を受けて、対象貫通電極群VGに伝送される記憶領域MR0からの読み出しデータにノイズが発生することを抑止することができる。この結果、ノイズが発生しやすい対象貫通電極群VGに接続された記憶領域MR0から読み出されるデータがノイズによりエラーとなることを抑止することができる。
ランダムなエラーが発生しやすい対象記憶領域MR0では、訂正可能なデータのエラーが連続して発生した場合、訂正不可能なデータのエラーになるおそれがある。訂正不可能なデータのエラーが発生した場合、情報処理装置は停止され、メモリ20が他のメモリ20と交換される。図1に示すメモリコントローラ30を有するプロセッサ10では、対象記憶領域MR0と、対象記憶領域MR0に隣接する記憶領域MR1とのアクセス動作の重複を避けることができる。したがって、対象記憶領域MR0において、訂正不可能なデータのエラーが発生することを抑止することができる。この結果、訂正不可能なデータのエラーの発生によりメモリ200を交換する頻度を、従来に比べて低くすることができる。
サイクルC3で受信した書き込みアクセス要求は、エラーの訂正回数が閾値VTを超えた対象記憶領域MR0に対するメモリアクセス要求である。また、メモリ20は、サイクルC7−C10において、対象記憶領域MR0に隣接する記憶領域MR1に含まれる記憶領域MR1の書き込みアクセス動作を実行する。このため、要求発行部38は、サイクルC6で記憶領域MR1に対するメモリアクセス要求を出力した後、3サイクルのウエイトサイクルW3を挿入する。
そして、要求発行部38は、ウエイトサイクルW3の経過後、サイクルC3で受信した記憶領域MR0の書き込みアクセス要求を、サイクルC10でメモリ20に出力する(図2(i))。記憶領域MR0に対する書き込みアクセス要求がメモリ20に出力されるサイクルC10は、メモリ20による記憶領域MR1に対する書き込みアクセス動作が完了するサイクルである。
メモリ20は、記憶領域MR0に対する書き込みアクセス要求に基づいて、サイクルC11−C14で書き込みアクセス動作を実行する(図2(j))。ウエイトサイクルW3の挿入により、メモリ20は、対象記憶領域MR0に隣接する記憶領域MR1の書き込みアクセス動作と、対象記憶領域MR0の書き込みアクセス動作とを互いに重複することなく実行することができる。したがって、隣接する貫通電極群VGに伝送される信号の影響を受けて、対象貫通電極群VGに伝送される記憶領域MR0への書き込みデータにノイズが発生することを抑止することができる。この結果、ノイズにより誤ったデータが記憶領域MR0に書き込まれることを抑止することができ、書き込み動作後に記憶領域MR0から読み出されるデータに訂正不可能なエラーが発生することを抑止することができる。
サイクルC4で受信した書き込みアクセス要求は、サイクルC11でアクセス動作が開始された対象記憶領域MR0に隣接しない記憶領域MR3に対するメモリアクセス要求である。このため、要求発行部38は、記憶領域MR0に対する書き込みアクセス要求を出力したサイクルC10の次のサイクルC11で、記憶領域MR3に対する書き込みアクセス要求をメモリ20に出力する(図2(k))。
メモリ20は、記憶領域MR3に対する書き込みアクセス要求に基づいて、サイクルC12−C15で書き込みアクセス動作を実行する(図2(l))。ランダムなエラーが他の記憶領域MR1−MR3に比べて発生しやすい記憶領域MR0のアクセス動作と、対象記憶領域MR0に隣接しない記憶領域MR3のアクセス動作とは、互いに重複して実行可能である。したがって、アクセス動作を重複させない場合に比べて、アクセス効率を向上させることができる。
一方、要求発行部38が、メモリアクセス要求をキャッシュメモリから受信する毎にメモリ20に順に出力するかぎ括弧内の動作では、メモリ20のアクセス動作は、記憶領域MR0−MR3の位置関係に拘わらず、互いに重複して実行される。対象記憶領域MR0のアクセス動作と、対象記憶領域MR0に隣接する記憶領域MR1または記憶領域MR2のアクセス動作が重複した場合、ノイズの影響により対象記憶領域MR0から読み出されるデータのエラーが発生しやすくなる。これにより、訂正可能なエラーが対象記憶領域MR0で連続して発生した場合、訂正不可能なエラーになるおそれがある。訂正不可能なエラーが発生した場合、情報処理装置の動作が停止するため、信頼性が低下する。換言すれば、図1に示す情報処理装置では、訂正不可能なエラーが発生することを抑止できるため、信頼性が低下することを抑止することができる。
以上、図1および図2に示す実施形態では、以下に示す効果を得ることができる。アドレスフィルタ部32により、物理的な欠陥に起因して発生する訂正可能なエラーのアドレスADを除外して、ノイズに起因してランダムに発生する訂正可能なエラーのアドレスADをエラーアドレスERRAとしてカウンタ部34に出力することができる。このため、領域情報出力部36は、ノイズに起因してランダムに発生したエラーの訂正回数と、閾値VTとを比較することができ、ノイズに起因してランダムなエラーが発生しやすい記憶領域MRを正確に判定することができる。
要求発行部38は、エラーの訂正回数が閾値VTを超えた対象記憶領域MR0に対するメモリアクセス要求と、対象記憶領域MR0に隣接する記憶領域MR1、MR2に対するメモリアクセス要求とを所定の時間間隔を空けてメモリ20に出力する。これにより、対象記憶領域MR0のアクセス動作と、対象記憶領域MR0に隣接する記憶領域MR1、MR2のアクセス動作とを重複することなく実行することができる。したがって、記憶領域MR1、MR2の動作の影響により対象貫通電極群VGに発生するノイズを小さくすることができる。
この結果、対象記憶領域MR0において、ランダムなエラーが発生することを抑止することができ、訂正不可能なエラーが発生することを抑止することができる。したがって、従来に比べて、訂正不可能なデータのエラーの発生に伴いメモリ20を交換する頻度を低くすることができ、情報処理装置が停止する期間を短くすることができる。すなわち、図1に示すメモリコントローラ30を含まないプロセッサに比べて、メモリ20および情報処理装置の信頼性を向上することができる。このように、メモリモジュール等に比べて交換が困難なメモリ200において、訂正不可能なエラーの発生を抑止することは、情報処理装置を安定して稼働させるために有効である。
図3は、プロセッサおよびメモリアクセス方法の別の実施形態を示す。図1に示した要素と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。また、図1および図2で説明した動作と同様の動作については、詳細な説明は省略する。
図3に示すプロセッサ100は、複数のプロセッサコア110、キャッシュメモリ120、およびメモリ200のアクセスを制御するメモリコントローラ300を有する。例えば、プロセッサ100およびメモリ200は、サーバ等の情報処理装置のマザーボードに接続される。また、図3に示す情報処理装置は、情報処理装置に含まれるプロセッサ100等の電子部品の動作を制御する制御基板700を有する。制御基板700は、サービスプロセッサ710および不揮発性メモリ720を有する。
各プロセッサコア110は、例えば、ロード命令をフェチした場合、キャッシュメモリ120に読み出しコマンドを発行する。キャッシュメモリ120は、読み出しコマンドに対応するデータを保持する場合(キャッシュヒット)、保持するデータをプロセッサコア110に出力する。キャッシュメモリ120は、読み出しコマンドに対応するデータを保持しない場合(キャッシュミス)、読み出しコマンドに対応するメモリアクセス要求MREQ0である読み出しアクセス要求をメモリコントローラ300に発行する。
メモリ200は、メモリ部210と、メモリ部210の動作を制御するメモリ制御部220とを有する。メモリ部210は、積層された複数のメモリチップMCと、メモリチップMC間を相互に接続するTSVとを有する。各メモリチップMCに入出力されるデータ等の信号は、他のメモリチップMCとTSVとを介して伝送されるため、他のメモリチップMCまたはTSVで発生するノイズの影響を受ける場合がある。メモリ部210の例は、図5に示される。なお、メモリ制御部220が、ロジックチップの形態を有する場合、メモリ制御部220は、TSVを介してメモリチップMCに接続されてもよい。
例えば、メモリ200は、SDRAM等を含むメモリモジュールに比べて、処理性能および部品の実装密度が高いHMC(Hybrid Memory Cube)またはHBM(High Band with Memory)等である。HMCまたはHBM等のメモリは、例えば、情報処理装置のマザーボードにはんだ付けされるため、情報処理装置がシステムとして運用される環境下では、交換が困難である。例えば、HMCまたはHBM等のメモリは、情報処理装置を保守する拠点に情報処理装置を運んだ後に交換される。これに対して、例えば、SDRAM等を含むメモリモジュールは、情報処理装置のマザーボードに取り付けられたソケットに挿入されるため、HMCまたはHBM等のメモリに比べて交換が容易である。
メモリコントローラ300は、アドレスフィルタ部320、カウンタ部340、領域情報出力部360、コマンド発行制御部380およびコマンド受信制御部390を有する。コマンド発行制御部380は、要求発行部の一例である。
アドレスフィルタ部320は、エラー履歴保持部322および出力制御部324を有する。エラー履歴保持部322は、エラーが訂正されたデータを保持するメモリ200のアドレスADと有効フラグVとを保持する複数のエントリを有する。エラー履歴保持部322は、アドレスADを保持する保持部の一例である。アドレスフィルタ部320は、物理的な欠陥に起因して発生する訂正可能なエラーのエラーアドレスERRAを通過させず、ノイズ等に起因してランダムに発生する訂正可能なエラーのエラーアドレスERRAを通過させる機能を有する。
例えば、エラー履歴保持部322は、エラーが訂正されたことを示す応答RESに含まれるアドレスADのうち、データを読み出したメモリブロックを示す所定数のビットをアドレスADとして保持する。エラー履歴保持部322にアドレスADの一部のビットを保持することで、アドレスADの全ビットを保持する場合に比べて、エラー履歴保持部322の回路規模を小さくすることができる。
例えば、出力制御部324は、エラーが訂正されたことを示す応答RESに含まれるアドレスADのうち、データを読み出したメモリブロックを示す所定数のビットをエラーアドレスERRAとしてカウンタ部340に出力する。カウンタ部340にアドレスADの一部のビットをエラーアドレスERRAとして出力することで、エラーアドレスERRAの全ビットを出力する場合に比べて、後述するアドレスデコーダ342の回路規模を小さくすることができる。
例えば、メモリブロックは、読み出しアクセス要求に含まれるアドレスADのうち、バンクアドレスおよびロウアドレスにより選択される。バンクアドレスは、各メモリチップMCに含まれる複数のバンクの選択に使用され、ロウアドレスは、各バンクに含まれる複数のロウ領域の選択に使用される。各ロウ領域は、複数のメモリセルを含むメモリセル列に共通に接続されるワード線毎に割り当てられる。すなわち、各メモリブロックは、各ワード線に接続される複数のメモリセルを含む。アドレスフィルタ部320の動作の例は、図9に示される。
カウンタ部340は、図5に示す貫通電極群VG0−VG15の各々に対応する複数のカウンタ344、複数の情報保持部346および複数の情報保持部348と、アドレスデコーダ342とを有する。各情報保持部346は、第2の情報保持部の一例であり、各情報保持部348は、第1の情報保持部の一例である。アドレスデコーダ342は、出力制御部324から受信するエラーアドレスERRAに基づいて、エラーアドレスERRAが示す記憶領域MRに接続される貫通電極群VGに対応するカウンタ344に、エラーが訂正されたことを示す訂正情報を出力する。
各カウンタ344は、アドレスデコーダ342から訂正情報を受信する毎に、カウンタ値CNTを更新(例えば、”1”増加)する。すなわち、カウンタ部340は、アドレスフィルタ部320からエラーアドレスERRAを受信する毎に、受信したエラーアドレスERRAが示す記憶領域MRに接続された貫通電極群VGに対応するカウンタ344のカウンタ値CNTを更新する。
各情報保持部346は、過去エラー情報PUEを保持する。例えば、論理1の過去エラー情報PUEは、対応する貫通電極群VGに接続される記憶領域MRのいずれかで、訂正不可能なエラー(UE:Uncorrectable Error)が過去に発生したことを示す。論理0の過去エラー情報PUEは、対応する貫通電極群VGに接続される記憶領域MRのいずれかで、訂正不可能なエラーが過去に発生していないことを示す。例えば、情報処理装置の出荷時、各情報保持部346は論理0にリセットされる。
各情報保持部348は、過去超過情報PCEを保持する。例えば、論理1の過去超過情報PCEは、対応する貫通電極群VGに接続される記憶領域MRのいずれかで、データのエラーを訂正した回数が過去に閾値VTを超えたことを示す。論理0の過去超過情報PCEは、対応する貫通電極群VGに接続される記憶領域MRのいずれかで、データのエラーを訂正した回数が過去に閾値VTを超えていないことを示す。例えば、情報処理装置の出荷時、各情報保持部348は論理0にリセットされる。
過去エラー情報PUEおよび過去超過情報PCEは、プロセッサ100の起動時に、制御基板700のサービスプロセッサ710により情報保持部346、348に格納される。カウンタ部340の動作の例は、図10に示される。
制御基板700の不揮発性メモリ720には、訂正不可能なデータのエラーが過去に発生した記憶領域MRを示すアドレスUEADと、データのエラーが訂正された回数が過去に閾値VTを超えた記憶領域MRを示すアドレスCEADとが保持される。サービスプロセッサ710は、不揮発性メモリ720にアドレスUEADが保持される場合、プロセッサ100の起動時に、アドレスUEADをカウンタ部340に出力する。また、サービスプロセッサ710は、不揮発性メモリ720にアドレスCEADが保持される場合、プロセッサ100の起動時に、アドレスCEADをカウンタ部340に出力する。なお、カウンタ部340は、アドレスUEADを受信した場合、アドレスUEADが示す記憶領域MRに接続される貫通電極群VGに対応する情報保持部346に保持される過去エラー情報PUEを論理1に設定する。また、カウンタ部340は、アドレスCEADを受信した場合、アドレスCEADが示す記憶領域MRに接続される貫通電極群VGに対応する情報保持部348に保持される過去超過情報PCEを論理1に設定する。
サービスプロセッサ710は、訂正不可能なエラーの発生を示す通知をコマンド受信制御部390から受信したことに基づいて、不揮発性メモリ720にアドレスUEADを格納する。また、サービスプロセッサ710は、プロセッサ100の電源の遮断時に、各カウンタ344のカウンタ値CNTおよび過去超過情報PCEに基づいて、不揮発性メモリ720にアドレスCEADを格納する。
領域情報出力部360は、16個のカウンタ344にそれぞれ対応する図示しない16個の比較器を含む比較部362と、所定の回数を示す閾値VTを保持する閾値保持部364とを有する。すなわち、領域情報出力部360は、貫通電極群VG0−VG15にそれぞれ対応する16個の比較器を有する。領域情報出力部360は、図1に示す領域情報出力部36と同様に、各カウンタ344が保持するカウンタ値CNTと閾値VTとを各比較器により比較する。そして、領域情報出力部360は、カウンタ値CNTが閾値VTを超えたことを判定した比較器に対応する領域情報MGINF(MGINF0−MGINF15のいずれか)をコマンド発行制御部380に出力する。各領域情報MGINF0−MGINF15は、貫通電極群VG0−VG15の各々に接続される複数の記憶領域MRを含む記憶領域群MG(MG0−MG15)に対応して出力される。記憶領域群MGは、複数のメモリチップMCにおいて、共通の貫通電極群VGに接続される複数の記憶領域MRを示し、図5で説明される。
領域情報出力部360は、情報保持部346が過去エラー情報PUEを保持する場合、過去エラー情報PUEを保持する情報保持部346に対応する貫通電極群VGに接続された記憶領域群MGを示す領域情報MGINFをコマンド発行制御部380に出力する。領域情報出力部360は、情報保持部348が過去超過情報PCEを保持する場合、過去超過情報PCEを保持する情報保持部348に対応する貫通電極群VGに接続される記憶領域群MGを示す領域情報MGINFをコマンド発行制御部380に出力する。すなわち、領域情報出力部360は、カウンタ部340が過去エラー情報PUEおよび過去超過情報PCEの少なくともいずれかを保持する場合、カウンタ344のカウンタ値CNTに拘わらず、領域情報MGINFをコマンド発行制御部380に出力する。領域情報出力部360の動作の例は、図11に示される。
コマンド発行制御部380は、図1に示す要求発行部38と同様に、キャッシュメモリ120から発行されるメモリアクセス要求MREQ0をメモリアクセス要求MREQとしてメモリ200に出力する。また、コマンド発行制御部380は、領域情報出力部360から受信する領域情報MINFに基づいて、メモリ200へのメモリアクセス要求MREQの出力タイミングを調整する機能を有する。コマンド発行制御部380の例は、図4に示され、コマンド発行制御部380の動作の例は、図12に示される。
コマンド受信制御部390は、図1に示す応答制御部39と同様に、メモリ200から受信する応答RESに含まれる情報に基づいて、メモリアクセス要求MREQ0に対する応答をキャッシュメモリ120に出力する。また、コマンド受信制御部390は、メモリ200から受信する応答RESにデータのエラーが訂正されたことを示すエラー情報CEを含む場合、応答RESをアドレスフィルタ部320に転送する。さらに、コマンド受信制御部390は、メモリ200から受信する応答RESに訂正不可能なエラーが過去に発生したことを示すエラー情報が含まれる場合、応答に含まれるエラー情報をサービスプロセッサ710に通知する。コマンド受信制御部390は、読み出しアクセス要求に対応する応答RESにエラー情報CEが含まれることを検出する検出部の一例である。
図4は、図3に示すコマンド発行制御部380の一例を示す。コマンド発行制御部380は、一致判定部382と、重複判定部384、386と、タイマ389を含むステートマシン388とを有する。重複判定部384は、第1の重複判定部の一例であり、重複判定部386は、第2の重複判定部の一例である。ステートマシン388は、タイミング調整部の一例である。
一致判定部382は、メモリアクセス要求MREQ0に含まれるアドレスADが示すアクセス対象の記憶領域MRが、領域情報MGINF0−MGINF15が示す記憶領域群MGに含まれる記憶領域MRのいずれかと一致するか否かを判定する。一致判定部382は、メモリアクセス要求MREQ0によるアクセス対象の記憶領域MRが、領域情報MGINF0−MGINF15が示す記憶領域群MGに含まれる対象記憶領域MRのいずれかである場合、一致情報を重複判定部384に出力する。一致判定部382は、メモリアクセス要求MREQ0によるアクセス対象の記憶領域MRが、対象記憶領域MRでない場合、不一致情報を重複判定部384に出力する。以下では、対象記憶領域MRでない記憶領域MRは、非対象記憶領域MRとも称される。
対象記憶領域MRは、ノイズ等に起因して訂正可能なエラーがランダムに発生しやすい記憶領域MRであり、非対象記憶領域MRは、ノイズ等に起因して訂正可能なエラーが発生しにくい記憶領域MRである。すなわち、一致判定部382は、対象記憶領域MRに対応するメモリアクセス要求MREQ0を受信した場合、一致情報を出力し、非対象記憶領域MRに対応するメモリアクセス要求MREQ0を受信した場合、不一致情報を出力する。
重複判定部384は、一致情報を受信した場合、メモリアクセス要求MREQ0による対象記憶領域MRのアクセス動作と、対象記憶領域MRを含む記憶領域群MGに隣接する記憶領域群MGである隣接記憶領域群MGのアクセス動作とが重複するか否かを判定する。対象記憶領域MRを含む記憶領域群MGに隣接する記憶領域群MGのアクセス動作の状況は、ステートマシン388から受信する。重複判定部384は、アクセス動作が重複することを判定した場合、重複情報をステートマシン388に出力する。重複判定部384は、一致情報を受信しない場合、アクセス動作の重複を判定する動作を実行せず、重複情報をステートマシン388に出力しない。
重複判定部386は、不一致情報を受信した場合、メモリアクセス要求MREQ0による非対象記憶領域MRのアクセス動作と、非対象記憶領域MRを含む記憶領域群MGに隣接する対象記憶領域MRのアクセス動作とが重複するか否かを判定する。重複判定部386は、非対象記憶領域MRを含む記憶領域群MGに隣接する対象記憶領域MRを、領域情報MGINF0−MGINF15と、ステートマシン388から受信する記憶領域MRのアクセス動作の状況とに基づいて検出する。重複判定部386は、アクセス動作が重複することを判定した場合、重複情報をステートマシン388に出力する。重複判定部386は、不一致情報を受信しない場合、アクセス動作の重複を判定する動作を実行せず、重複情報をステートマシン388に出力しない。
例えば、重複情報は、アクセス動作が重複する記憶領域MRを示す情報を含む。重複判定部384、386により、対象記憶領域MRのアクセス動作と、対象記憶領域MRを含む記憶領域群MGに隣接する隣接記憶領域群MGのアクセス動作とが、互いに重複するか否かを判定することができる。
ステートマシン388は、例えば、メモリアクセス要求MREQ0を受信した順に保持する図示しない要求キューを有し、要求キューに保持された順に、メモリアクセス要求MREQ0をメモリアクセス要求MREQとしてメモリ200に出力する。ステートマシン388は、重複判定部384、386のいずれかから重複情報を受信した場合、タイマ389を起動する。そして、ステートマシン388は、タイマ389が所定時間の計測を完了するまで、メモリアクセス要求MREQ0に対応するメモリアクセス要求MREQのメモリ200への出力を抑止する。
すなわち、ステートマシン388は、重複判定部384、386がアクセス動作の重複を判定した場合、メモリアクセス要求MREQのメモリ200への出力を、アクセス動作の重複が発生しないタイミングまで待機させる。これにより、重複情報を受信した場合のメモリアクセス要求MREQの出力タイミングは、重複情報を受信しない場合のメモリアクセス要求MREQの出力タイミングに比べて遅くなる。
この結果、図7および図8に示すように、対象記憶領域MRのアクセス動作と、対象記憶領域MRを含む記憶領域群MGに隣接する隣接記憶領域群MGのアクセス動作とが、重複して実行されることを抑止することができる。したがって、対象記憶領域MRで実行されるアクセス動作において、隣接記憶領域群MGの動作に起因して発生するノイズによりエラーが発生する確率を下げることができる。なお、ステートマシン388は、メモリ200によるアクセス動作の状況を、メモリアクセス要求MREQの受信に基づいて動作するメモリ200のタイミング仕様に基づいて判定し、判定した状況に基づいて、タイマ389が計測する所定時間を変更する。
図5は、図3に示すメモリ部210の一例を示す。メモリ部210は、積層された8個のメモリチップMC(MC0−MC7)を有し、各メモリチップMCは、16個の記憶領域MR(MR0−MR15)を有する。複数のメモリチップMCは、例えば、各メモリチップMCを貫通する複数のTSVにより互いに接続される。なお、メモリ部210が有するメモリチップMCの数は、8個に限定されず、各メモリチップMCが有する記憶領域MRの数は、16個に限定されない。また、メモリチップMCの半導体基板は、シリコン基板に限定されない。
各メモリチップMC0−MC7において、各記憶領域MR0−MR15は、例えば、互いに独立にアクセスが可能であり、互いに重複する期間にアクセス動作を実行することが可能である。メモリチップMC0−MC7において、末尾の番号が同じ記憶領域MRは、所定数のTSVを含む共通の貫通電極群VG(VG0−VG15)により互いに接続される。共通の貫通電極群VGにより接続された記憶領域MRは、記憶領域群MG(MG0−MG15)に含まれる。各記憶領域群MGに含まれる記憶領域MRの末尾に付した番号は、記憶領域群MGの末尾に付した番号および貫通電極群VGの末尾に付した番号と同じである。
例えば、メモリチップMC0−MC7は、3ビットのアドレスAD[6:4]により識別され、各メモリチップMC0−MC7の記憶領域MR0−MR15は、4ビットのアドレスAD[3:0]により識別される。このため、各記憶領域群MG0−MG15および各貫通電極群VGは、アドレスAD[3:0]により識別可能である。各記憶領域MR0−MR15に割り当てられるアドレスAD[3:0]の例は、図6に示される。したがって、図3に示したアドレスデコーダ342は、アドレスフィルタ部320から出力されるエラーアドレスERRAのビットのうち、アドレスAD[3:0]に対応する4ビットに基づいて、カウンタ値CNTを更新するカウンタ344を選択できる。
一方、各記憶領域群MGに含まれる記憶領域MRを識別するアドレスADのビット位置がメモリチップMC0−MC7毎に異なる場合、記憶領域群MG0−MG15は、共通の3ビットのアドレスADにより識別することが困難である。また、貫通電極群VG0−VG15は、共通の3ビットのアドレスADにより識別することが困難である。この場合、記憶領域群MGおよび貫通電極群VGは、メモリチップMC毎に記憶領域MR0−MR15に割り当てられた3ビットのアドレスADの値に基づいて識別される。例えば、アドレスデコーダ342は、各メモリチップMC0−MC7の記憶領域MR0−MR15がどの貫通電極群VGに接続されるかを示す情報を保持している。そして、図3に示したアドレスデコーダ342は、アドレスフィルタ部320から出力されるエラーアドレスERRAに基づいて、メモリチップMC毎に、カウンタ値CNTを更新するカウンタ344を選択する。
なお、各記憶領域群MGに含まれる複数の記憶領域MRは、貫通電極群VGを共通に使用するため、アクセス動作を重複して実行できない。このため、エラーの訂正回数が閾値VTを超えた1つの記憶領域群MGに対するメモリアクセス要求がキャッシュメモリ120から連続して出力される場合、コマンド発行制御部380は、所定数のウエイトサイクルを挟んで、メモリアクセス要求を順次出力する。
図6は、図5に示すメモリ部210に含まれる記憶領域群MG0−MG15の配置の一例を示す。記憶領域群MG0−MG15は、図6において、各メモリチップMC0−MC7の縦方向に4つ配置され、横方向に4つ配置される。
太枠で示す記憶領域群MG6は、「エラーの訂正回数が閾値VTを超えた」、「過去に訂正不可能なエラーが発生した」、または「過去にエラーの訂正回数が閾値VTを超えた」の少なくともいずれかの状態であることを示す。すなわち、記憶領域群MG6は、他の記憶領域群MGに比べて、ノイズ等に起因して訂正可能なエラーがランダムに発生しやすい対象記憶領域群である。記憶領域群MG1−MG5、MG7−MG15は、記憶領域群MG6に比べて、ノイズ等に起因して訂正可能なエラーがランダムに発生しにくい非対象記憶領域群である。また、記憶領域群MG6の各辺に対向する記憶領域群MG2、MG5、MG7、MG10は、対象記憶領域群である記憶領域群MG6に隣接する隣接記憶領域群である。
「エラーの訂正回数が閾値VTを超えた」は、各カウンタ344のカウンタ値CNTに基づいて、図3に示す領域情報出力部360が判定する。「過去に訂正不可能なエラーが発生した」は、各情報保持部346に保持された過去エラー情報PUEに基づいて、領域情報出力部360が判定する。「過去にエラーの訂正回数が閾値VTを超えた」は、各情報保持部348に保持された過去超過情報PCEとに基づいて、領域情報出力部360が判定する。
図7は、図3に示す情報処理装置の動作の一例を示す。すなわち、図7は、メモリ200のアクセスを制御するメモリコントローラ300によるメモリアクセス方法の一例を示す。図2と同様の動作については、詳細な説明は省略する。図7の下側のかぎ括弧内に示す動作は、図2のかぎ括弧内に示す動作と同様に、メモリアクセス要求をキャッシュメモリ120から受信する毎にメモリ200に出力する要求発行部を有するメモリコントローラを含む情報処理装置の動作の例を示す。
コマンド発行制御部380(図4)は、サイクルC1で非対象記憶領域群MG4に対する読み出しアクセス要求を受信し、一致判定部382で不一致を判定し、重複判定部386で、対象記憶領域群MG6のアクセス動作と重複しないことを判定する。このため、コマンド発行制御部380は、タイマ389を起動することなく、読み出しアクセス要求を受信したサイクルC1の次のサイクルC2で、非対象記憶領域群MG4に対する読み出しアクセス要求をメモリ200に出力する(図7(a))。コマンド発行制御部380は、サイクルC1で受信した読み出しアクセス要求と同様に、サイクルC2で受信する非対象記憶領域群MG5に対する書き込みアクセス要求を処理する(図7(b))。
コマンド発行制御部380は、サイクルC3で対象記憶領域群MG6に対する書き込みアクセス要求を受信し、一致判定部382で一致を判定し、重複判定部384で、隣接記憶領域群MG5のアクセス動作と重複することを判定する。このため、コマンド発行制御部380は、サイクルC3でタイマ389を起動して3サイクル分のウエイトサイクルW3を挿入した後、サイクルC7で、対象記憶領域群MG6に対する書き込みアクセス要求をメモリ200に出力する(図7(c))。
コマンド発行制御部380は、サイクルC4で非対象記憶領域群MG7に対する書き込みアクセス要求を受信し、一致判定部382で不一致を判定し、重複判定部386で、対象記憶領域群MG6のアクセス動作と重複することを判定する。このため、コマンド発行制御部380は、サイクルC7でタイマ389を起動して3サイクル分のウエイトサイクルW3を挿入した後、サイクルC11で、非対象記憶領域群MG7に対する書き込みアクセス要求をメモリ200に出力する(図7(d))。
コマンド発行制御部380は、サイクルC5で対象記憶領域群MG6に対する読み出しアクセス要求を受信し、一致判定部382で一致を判定し、重複判定部384で、隣接記憶領域群MG7のアクセス動作と重複することを判定する。このため、コマンド発行制御部380は、サイクルC11でタイマ389を起動して3サイクル分のウエイトサイクルW3を挿入した後、サイクルC15で、対象記憶領域群MG6に対する読み出しアクセス要求をメモリ200に出力する(図7(e))。
コマンド発行制御部380は、サイクルC6で非対象記憶領域群MG9に対する読み出しアクセス要求を受信し、一致判定部382で不一致を判定し、重複判定部386で、対象記憶領域群MG6のアクセス動作と重複しないことを判定する。このため、コマンド発行制御部380は、タイマ389を起動することなく、対象記憶領域群MG6に対する読み出しアクセス要求を出力した次のサイクルC16で、非対象記憶領域群MG9に対する読み出しアクセス要求をメモリ200に出力する(図7(f))。
以上により、メモリ200は、対象記憶領域群MG6のアクセス動作と隣接記憶領域群MG5、MG7のアクセス動作とを、互いに重複することなく実行することができる。これにより、ランダムなエラーが他の記憶領域群MGより発生しやすい対象記憶領域群MG6の貫通電極群VGにおいて、隣接記憶領域群MG5、MG7のアクセス動作の影響により発生するノイズを小さくすることができる。したがって、訂正不可能なエラーが発生することを抑止でき、信頼性が低下することを抑止することができる。
図8は、図3に示す情報処理装置の動作の別の例を示す。すなわち、図8は、メモリ200のアクセスを制御するメモリコントローラ300によるメモリアクセス方法の一例を示す。図2および図7と同様の動作については、詳細な説明は省略する。
コマンド発行制御部380(図4)は、サイクルC2で対象記憶領域群MG6に対する書き込みアクセス要求を受信し、一致判定部382で一致を判定し、重複判定部384で、隣接記憶領域群MGのアクセス動作と重複しないと判定する。このため、コマンド発行制御部380は、タイマ389を起動することなく、書き込みアクセス要求を受信したサイクルC2の次のサイクルC3で、対象記憶領域群MG6に対する書き込みアクセス要求をメモリ200に出力する(図8(a))。
コマンド発行制御部380は、サイクルC3で非対象記憶領域群MG0に対する書き込みアクセス要求を受信し、一致判定部382で不一致を判定し、重複判定部386で、対象記憶領域群MG6のアクセス動作と重複しないことを判定する。このため、コマンド発行制御部380は、タイマ389を起動することなく、対象記憶領域群MG6に対する書き込みアクセス要求を出力した次のサイクルC4で、非対象記憶領域群MG0に対する書き込みアクセス要求をメモリ200に出力する(図8(b))。
コマンド発行制御部380は、サイクルC4で非対象記憶領域群MG7に対する書き込みアクセス要求を受信し、一致判定部382で不一致を判定し、重複判定部386で、対象記憶領域群MG6のアクセス動作と重複することを判定する。このため、コマンド発行制御部380は、サイクルC4でタイマ389を起動して2サイクル分のウエイトサイクルW2を挿入した後、サイクルC7で、非対象記憶領域群MG7に対する書き込みアクセス要求をメモリ200に出力する(図8(c))。
また、コマンド発行制御部380は、サイクルC7で対象記憶領域群MG6に対する読み出しアクセス要求を受信し、一致判定部382で一致を判定し、重複判定部384で、隣接記憶領域群MG7のアクセス動作と重複することを判定する。このため、コマンド発行制御部380は、サイクルC9でタイマ389を起動して1サイクル分のウエイトサイクルW1を挿入した後、サイクルC11で、対象記憶領域群MG6に対する読み出しアクセス要求をメモリ200に出力する(図8(d))。コマンド発行制御部380のステートマシン388は、タイマ389に計測させる所定時間を、アクセス動作が重複する期間に合わせて変更する。これにより、所定時間をウエイトサイクルW3に固定する場合に比べて、メモリアクセス要求MREQを効率的にメモリ200に出力することができる。
図9は、図3に示すアドレスフィルタ部320の動作の一例を示す図である。図9に示す動作は、読み出しアクセス要求に対する応答RESをコマンド受信制御部390から受信する毎に開始される。
まず、ステップS10において、アドレスフィルタ部320の出力制御部324は、コマンド受信制御部390から受信する応答RESがエラー情報CEを含む場合、動作をステップS12に移行し、応答RESがエラー情報CEを含まない場合、動作を終了する。次に、ステップS12において、出力制御部324は、エラー履歴保持部322のエントリのいずれかが、応答RESに含まれるアドレスADを保持しているか否かを判定する。出力制御部324は、エラー履歴保持部322のエントリのいずれもアドレスADを保持していない場合、応答RESに対応する情報をエラー履歴保持部322のエントリに格納するため、動作をステップS14に移行する。
一方、出力制御部324は、エラー履歴保持部322のエントリのいずれかがアドレスADを保持している場合、同じアドレスADで過去にデータのエラーが訂正されているため、動作は終了する。同じアドレスADで発生するデータのエラーは、物理的な欠陥に起因して発生する可能性が高い。この場合、後述するステップS16が実行されないため、出力制御部324は、応答RESに含まれるアドレスADをカウンタ部340に出力しない。
ステップS14において、出力制御部324は、エラー履歴保持部322の空いているエントリに、応答RESに含まれるアドレスADを格納し、有効フラグVを有効状態に設定する。なお、出力制御部324は、有効フラグVが無効状態のエントリを空いているエントリと判定する。次に、ステップS16において、出力制御部324は、応答RESに含まれるアドレスADをエラーアドレスERRAとしてカウンタ部340に出力し、動作を終了する。以上の動作により、アドレスフィルタ部320は、物理的な欠陥に起因して発生する訂正可能なエラーのアドレスADを除外して、ノイズに起因してランダムに発生する訂正可能なエラーのアドレスADをカウンタ部340に出力することができる。
図10は、図3に示すカウンタ部340の動作の一例を示す。図10に示す動作は、所定の頻度で実行される。
まず、ステップS20において、カウンタ部340は、サービスプロセッサ710からアドレスUEADを受信した場合、動作をステップS22に移行し、サービスプロセッサ710からアドレスUEADを受信しない場合、動作をステップS24に移行する。ステップS22において、カウンタ部340は、サービスプロセッサ710から受信したアドレスUEADに対応する情報保持部346が保持する過去エラー情報PUEを論理1に設定し、動作をステップS24に移行する。
ステップS24において、カウンタ部340は、サービスプロセッサ710からアドレスCEADを受信した場合、動作をステップS26に移行し、サービスプロセッサ710からアドレスCEADを受信しない場合、動作をステップS28に移行する。ステップS26において、カウンタ部340は、サービスプロセッサ710から受信したアドレスCEADに対応する情報保持部348が保持する過去超過情報PCEを論理1に設定し、動作をステップS28に移行する。
ステップS28において、カウンタ部340は、アドレスフィルタ部320からエラーアドレスERRAを受信した場合、動作をステップS29に移行し、アドレスフィルタ部320からエラーアドレスERRAを受信しない場合、動作を終了する。ステップS29において、カウンタ部340は、アドレスフィルタ部320から受信したエラーアドレスERRAに対応するカウンタ344のカウンタ値CNTを”1”増加し、動作を終了する。
図11は、図3に示す領域情報出力部360の動作の一例を示す。図11に示す動作は、所定の頻度で実行される。
まず、ステップS30において、領域情報出力部360は、論理1の過去エラー情報PUEまたは論理1の過去超過情報PCEを保持する情報保持部346、348がある場合、動作をステップS32に移行する。領域情報出力部360は、論理1の過去エラー情報PUEまたは論理1の過去超過情報PCEを保持する情報保持部346、348がない場合、動作をステップS34に移行する。ステップS32において、領域情報出力部360は、論理1の過去エラー情報PUEを保持する情報保持部346または論理1の過去超過情報PCEを保持する情報保持部348に対応する領域情報MGINFをコマンド発行制御部380に出力する。この後、動作はステップS34に移行される。ステップS30、S32の動作により、カウンタ344のカウンタ値CNTが閾値VTを超える前に、過去に起動されたプロセッサ100がアクセスしたメモリ200で発生したエラーに基づき領域情報MGINFを出力することができる。換言すれば、カウンタ344のカウンタ値CNTが閾値VTを超える前に、ノイズに起因してランダムなエラーが発生しやすい記憶領域群MGを判定することができる。
ステップS34において、領域情報出力部360は、閾値VTを超えたカウンタ値CNTを保持するカウンタ344がある場合、動作をステップS36に移行し、閾値VTを超えたカウンタ値CNTを保持するカウンタ344がない場合、動作を終了する。ステップS36において、領域情報出力部360は、閾値VTを超えたカウンタ値CNTを保持するカウンタ344に対応する領域情報MGINFをコマンド発行制御部380に出力し、動作を終了する。なお、ステップS32で領域情報MGINFが出力された場合、領域情報MGINFの出力状態が維持されるため、同じ領域情報MGINFがステップS36で再び出力されることはない。
図12は、図3に示すコマンド発行制御部380の動作の一例を示す。図12に示す動作は、キャッシュメモリ120からメモリアクセス要求MREQ0を受信する毎に開始される。
まず、ステップS40において、コマンド発行制御部380の一致判定部382は、キャッシュメモリ120から受信したメモリアクセス要求MREQ0が、領域情報出力部360から出力される領域情報MGINFに対応するか否かを判定する。すなわち、一致判定部382は、メモリアクセス要求MREQ0が、ノイズ等に起因して訂正可能なエラーがランダムに発生しやすい対象記憶領域群MGに対する要求であるかを判定する。メモリアクセス要求MREQ0が対象記憶領域群MGに対する要求の場合、動作はステップS42に移行し、メモリアクセス要求MREQ0が対象記憶領域群MGに対する要求でない場合、動作はステップS44に移行する。
ステップS42において、コマンド発行制御部380の重複判定部384は、メモリアクセス要求MREQ0に対応する対象記憶領域群MGのアクセス動作と、対象記憶領域群MGに隣接する隣接記憶領域群MGのアクセス動作とが重複するか否かを判定する。アクセス動作が重複する場合、動作はステップS46に移行され、アクセス動作が重複しない場合、動作はステップS48に移行される。
ステップS44において、コマンド発行制御部380の重複判定部386は、メモリアクセス要求MREQ0に対応してアクセス動作を実行する記憶領域群MGが、アクセス動作を実行する対象記憶領域群MGに隣接する場合、動作をステップS46に移行する。重複判定部386は、メモリアクセス要求MREQ0に対応してアクセス動作を実行する記憶領域群MGが、アクセス動作を実行する対象記憶領域群MGに隣接しない場合、動作をステップS48に移行する。
ステップS46において、コマンド発行制御部380のステートマシン388は、タイマ389をセットし、所定数のサイクルの経過を待ち、動作をステップS48に移行する。ステップS48において、ステートマシン388は、メモリアクセス要求MREQ0をメモリアクセス要求MREQとしてメモリ200に出力し、動作を終了する。
以上、図3から図12に示す実施形態においても、図1および図2に示す実施形態と同様の効果を得ることができる。すなわち、アドレスフィルタ部320により、物理的な欠陥に起因して発生する訂正可能なエラーのアドレスADを除外して、ノイズに起因してランダムに発生する訂正可能なエラーのアドレスADをカウンタ部340に出力することができる。このため、領域情報出力部360により、ノイズに起因してランダムなエラーが発生しやすい記憶領域群MGを正確に判定することができる。
図4に示したコマンド発行制御部380による制御により、対象記憶領域群MGのアクセス動作と、対象記憶領域群MGに隣接する記憶領域群MGのアクセス動作とを重複することなく実行することができる。したがって、対象記憶領域群MGに隣接する記憶領域群の動作の影響により、対象記憶領域群MGにおいてランダムなエラーが発生することを抑止することができ、訂正不可能なエラーが発生することを抑止することができる。この結果、訂正不可能なデータのエラーの発生によりメモリ200を交換する頻度を、従来に比べて低くすることができる。すなわち、図3に示すメモリコントローラ300を含まないプロセッサに比べて、メモリ200および情報処理装置の信頼性を向上することができる。
さらに、図3から図12に示す実施形態では、カウンタ344のカウンタ値CNTが閾値VTを超える前に、過去に起動されたプロセッサ100がアクセスしたメモリ200で発生したエラーに基づき領域情報MGINFを出力することができる。換言すれば、カウンタ344のカウンタ値CNTが閾値VTを超える前に、ノイズに起因してランダムなエラーが発生しやすい記憶領域群MGを判定することができる。
図13は、プロセッサおよびメモリアクセス方法の別の実施形態を示す。図1および図3に示す実施形態で説明した要素と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。図13に示すプロセッサ100Aは、図3に示すアドレスフィルタ部320の代わりにアドレスフィルタ部320Aを有する。プロセッサ100Aおよびプロセッサ100Aを含む情報処理装置のその他の構成は、図3と同じである。
アドレスフィルタ部320Aは、エラー履歴保持部322Aおよび出力制御部324Aを有する。エラー履歴保持部322Aは、エラーが訂正された回数である訂正回数CNT0を各エントリに保持する機能を有することを除き、図3に示すエラー履歴保持部322と同じである。出力制御部324Aは、訂正回数CNT0をアドレスAD毎にエラー履歴保持部322Aに格納する機能と、訂正回数CNT0が1回のエントリに保持された情報を消去する機能とを有することを除き、図3に示す出力制御部324と同じである。アドレスフィルタ部320Aの動作の例は、図14および図15に示される。
図13に示すアドレスフィルタ部320Aでは、訂正可能なエラーが同じアドレスADで発生してエラーが訂正される毎に、エラー履歴保持部322Aにおいて、エラーが発生したアドレスADに対応するエントリに保持された訂正回数CNT0が増えていく。2以上の訂正回数CNT0とともにエントリに保持されるアドレスADは、例えば、物理的な欠陥に起因してエラーが発生したメモリブロックを示す。すなわち、アドレスフィルタ部320Aは、物理的な欠陥に起因して発生するエラーと、ノイズに起因して発生するエラーとを識別可能である。
例えば、サービスプロセッサ710は、エラー履歴保持部322Aに保持された訂正回数CNT0が所定の回数を超える場合、メモリ200の交換を促すメッセージを図示しない表示装置等に出力することが可能である。これにより、メモリ200に訂正不可能なエラーが発生する前にメモリ200を交換することができる。したがって、メッセージを出力しない場合に比べて、情報処理装置の信頼性を向上することができる。
図14は、図13に示すアドレスフィルタ部320Aの動作の一例を示す。図9と同じ動作については、同じ符号を付し、詳細な説明は省略する。
まず、ステップS2において、出力制御部324Aは、エラー履歴保持部322Aに空いているエントリがない場合、動作をステップS4に移行し、エラー履歴保持部322Aに空いているエントリがある場合、動作をステップS10に移行する。ステップS4において、出力制御部324Aは、エラー履歴保持部322Aの複数のエントリのうち、訂正回数CNT0が1回のエントリの少なくとも1つの有効フラグVを無効状態に設定し、動作をステップS10に移行する。有効フラグVが無効状態に設定されたエントリは、解放され、空きエントリになる。
ステップS2、S4の動作により、エラーが訂正されたことを示す応答RESに含まれるアドレスADを格納するエントリを常に確保することができる。また、ステップS2、S4の動作を繰り返すことで、物理的な欠陥に起因して発生するエラーのアドレスADを保持するエントリの比率が増えていく。これにより、物理的な欠陥に起因して発生する訂正可能なエラーのアドレスADを除外するアドレスフィルタ部320の性能を、アドレスフィルタ部320の動作にしたがって徐々に向上することができる。
ステップS10の動作は、図9に示すステップS10の動作と同じである。ステップS12において、出力制御部324Aは、エラー履歴保持部322Aのエントリのいずれかが、応答RESに含まれるアドレスADを保持している場合、動作をステップS18に移行する。出力制御部324Aは、エラー履歴保持部322Aのエントリのいずれも、応答RESに含まれるアドレスADを保持していない場合、動作をステップS15に移行する。
ステップS15において、出力制御部324Aは、エラー履歴保持部322Aの空いているエントリにおいて、応答RESに含まれるアドレスADを格納し、有効フラグVを有効状態に設定し、訂正回数CNT0を1回に設定し、動作をステップS16に移行する。ステップS16の動作は、図9に示すステップS16の動作と同じである。ステップS18において、出力制御部324Aは、エラー履歴保持部322Aにおいて、応答RESに含まれるアドレスADとともにエントリに保持された訂正回数CNT0を”1”増加し、動作を終了する。
図15は、図13に示すアドレスフィルタ部320Aの動作の別の例を示す。図9および図14と同じ動作については、同じ符号を付し、詳細な説明は省略する。図15に示す動作は、図14のステップS2の代わりにステップS3が実行されることを除き、図14に示す動作と同じである。
ステップS3において、出力制御部324Aは、エラー情報CEを含む応答RESを所定の回数受信した場合、動作をステップS4に移行し、エラー情報CEを含む応答RESを所定の回数受信していない場合、動作をステップS10に移行する。例えば、所定の回数は、エラー履歴保持部322Aのエントリ数より少ない回数である。
図14と同様に、ステップS3、S4の動作により、エラーが訂正されたことを示す応答RESに含まれるアドレスADを格納するエントリを常に確保することができる。また、物理的な欠陥に起因して発生する訂正可能なエラーのアドレスADを除外するアドレスフィルタ部320の性能を、アドレスフィルタ部320の動作にしたがって向上することができる。
以上、図13から図15に示す実施形態においても、図1から図12に示す実施形態と同様の効果を得ることができる。さらに、図13から図15に示す実施形態では、エラーが訂正されたことを示す応答RESに含まれるアドレスADを格納するエントリを常に確保することができる。また、物理的な欠陥に起因して発生する訂正可能なエラーのアドレスADを除外するアドレスフィルタ部320の性能を、アドレスフィルタ部320の動作にしたがって徐々に向上することができる。
以上の図1から図15に示す実施形態に関し、さらに以下の付記を開示する。
(付記1)
複数の貫通電極を各々含む複数の貫通電極群と、前記複数の貫通電極群に接続される複数の記憶領域を有するメモリチップとを含むメモリのアクセスを制御するメモリコントローラを含むプロセッサにおいて、
前記メモリコントローラは、
前記メモリからデータを読み出す読み出しアクセス要求に対応して前記メモリから出力される応答に、データのエラーが前記メモリにより訂正されたことを示すエラー情報が含まれる場合であって、前記読み出しアクセス要求に含まれるアクセスアドレスにおいてデータのエラーが初めて訂正されたことを判定した場合、前記読み出しアクセス要求に含まれるアクセスアドレスをエラーアドレスとして出力するアドレスフィルタ部と、
前記複数の貫通電極群の各々に対応する複数のカウンタを含み、受信した前記エラーアドレスが示す記憶領域に接続される貫通電極群に対応するカウンタのカウンタ値を更新するカウンタ部と、
カウンタ値が所定の回数を超えたカウンタに対応する貫通電極群に接続される記憶領域を示す領域情報を出力する領域情報出力部と、
前記領域情報出力部から出力される領域情報が示す記憶領域に対するアクセス要求と、前記領域情報出力部から出力される領域情報が示す記憶領域に隣接する記憶領域に対するアクセス要求とを所定の時間間隔を空けて前記メモリに出力する要求発行部と
を備えることを特徴とするプロセッサ。
(付記2)
前記要求発行部は、
前記メモリに出力するアクセス要求に含まれるアクセスアドレスが示すアクセス対象の記憶領域が、前記領域情報出力部が出力する領域情報が示す記憶領域のいずれかと一致するかを判定する一致判定部と、
前記一致判定部が一致を判定した場合、前記アクセス対象の記憶領域のアクセス動作と、前記アクセス対象の記憶領域に隣接する記憶領域のアクセス動作とが重複するかを判定する第1の重複判定部と、
前記一致判定部が不一致を判定した場合、前記アクセス対象の記憶領域のアクセス動作と、前記アクセス対象の記憶領域に隣接する記憶領域のうち、前記領域情報出力部が出力する領域情報に対応する記憶領域のアクセス動作とが重複するかを判定する第2の重複判定部と、
前記第1の重複判定部または前記第2の重複判定部が、アクセス動作の重複を判定した場合、前記アクセス要求の前記メモリへの出力を、アクセス動作の重複が発生しないタイミングまで待機させるタイミング調整部と
を備えることを特徴とする付記1に記載のプロセッサ。
(付記3)
前記タイミング調整部は、前記第1の重複判定部または前記第2の重複判定部がアクセス動作の重複を判定した場合に起動されるタイマを備え、前記タイマが所定時間の計測を完了するまで、アクセス要求の前記メモリへの出力を抑止すること
を特徴とする付記2に記載のプロセッサ。
(付記4)
前記アドレスフィルタ部は、
アクセスアドレスを保持する保持部と、
読み出しアクセス要求に対応する応答が前記エラー情報を含み、かつ、読み出しアクセス要求に対応する応答に含まれるアクセスアドレスが前記保持部に保持されていない場合、前記エラーアドレスを前記カウンタ部に出力するとともに前記保持部に格納し、読み出しアクセス要求に対応する応答が前記エラー情報を含み、かつ、読み出しアクセス要求に対応する応答に含まれるアクセスアドレスが前記保持部に保持されている場合、前記エラーアドレスの前記カウンタ部への出力を抑止する出力制御部と
を備えることを特徴とする付記1ないし付記3のいずれか1項に記載のプロセッサ。
(付記5)
前記保持部は、データのエラーが訂正された回数を示す訂正回数をアクセスアドレスとともに保持する複数のエントリを有し、
前記出力制御部は、
読み出しアクセス要求に対応する応答が前記エラー情報を含む場合であって、応答に含まれるアクセスアドレスが前記複数のエントリのいずれにも保持されていない場合、空いているエントリのいずれかにアクセスアドレスを格納し、アクセスアドレスを格納したエントリが保持する訂正回数を1回に設定し、
読み出しアクセス要求に対応する応答が前記エラー情報を含む場合であって、応答に含まれるアクセスアドレスが前記複数のエントリのいずれかに保持されている場合、アクセスアドレスを保持するエントリに保持された訂正回数を更新し、
前記複数のエントリの全てがアクセスアドレスを保持する場合、前記複数のエントリのうち、訂正回数が1回のエントリの少なくとも1つを解放すること
を特徴とする付記4に記載のプロセッサ。
(付記6)
前記保持部は、データのエラーが訂正された回数を示す訂正回数をアクセスアドレスとともに保持する複数のエントリを有し、
前記出力制御部は、
読み出しアクセス要求に対応する応答が前記エラー情報を含む場合であって、応答に含まれるアクセスアドレスが前記複数のエントリのいずれにも保持されていない場合、空いているエントリのいずれかにアクセスアドレスを格納し、アクセスアドレスを格納したエントリが保持する訂正回数を1回に設定し、
読み出しアクセス要求に対応する応答が前記エラー情報を含む場合であって、応答に含まれるアクセスアドレスが前記複数のエントリのいずれかに保持されている場合、アクセスアドレスを保持するエントリに保持された訂正回数を更新し、
前記複数のエントリのうち、訂正回数が1回のエントリの少なくとも1つを、前記エラー情報を含む応答を所定の回数受信する毎に解放すること
を特徴とする付記4に記載のプロセッサ。
(付記7)
前記出力制御部は、読み出しアクセス要求に含まれるアクセスアドレスのうち、前記複数の記憶領域の各々に含まれる複数のメモリブロックの選択に使用される所定数のビットをアクセスアドレスとして前記保持部に格納すること
を特徴とする付記4ないし付記6のいずれか1項に記載のプロセッサ。
(付記8)
前記カウンタ部は、貫通電極群に接続される記憶領域で発生したデータのエラーを前記メモリが訂正した回数が過去に前記所定の回数を超えたことを示す過去超過情報を保持する複数の第1の情報保持部を、前記複数のカウンタの各々に対応して有し、
前記領域情報出力部は、前記複数の第1の情報保持部のいずれかが前記過去超過情報を保持する場合、前記過去超過情報を保持する第1の情報保持部に対応するカウンタのカウンタ値に拘わりなく、前記過去超過情報を保持する第1の情報保持部に対応する貫通電極群に接続される記憶領域を示す領域情報を前記要求発行部に出力すること
を特徴とする付記1ないし付記7のいずれか1項に記載のプロセッサ。
(付記9)
前記カウンタ部は、貫通電極群に接続される記憶領域で訂正不可能なデータのエラーが過去に発生したことを示す過去エラー情報を保持する複数の第2の情報保持部を、前記複数のカウンタの各々に対応して有し、
前記領域情報出力部は、前記複数の第2の情報保持部のいずれかが前記過去エラー情報を保持する場合、前記過去エラー情報を保持する第2の情報保持部に対応するカウンタのカウンタ値に拘わりなく、前記過去エラー情報を保持する第2の情報保持部に対応する貫通電極群に接続される記憶領域を示す領域情報を前記要求発行部に出力すること
を特徴とする付記1ないし付記8のいずれか1項に記載のプロセッサ。
(付記10)
前記アドレスフィルタ部が前記カウンタ部に出力する前記エラーアドレスは、読み出しアクセス要求に含まれるアクセスアドレスのうち、前記複数の記憶領域の各々に含まれる複数のメモリブロックの選択に使用される所定数のビットであること
を特徴とする付記1ないし付記9のいずれか1項に記載のプロセッサ。
(付記11)
前記メモリコントローラは、さらに、読み出しアクセス要求に対応する応答に前記エラー情報が含まれることを検出する検出部を備えること
を特徴とする付記1ないし付記10のいずれか1項に記載のプロセッサ。
(付記12)
前記メモリは、前記複数の貫通電極群を介して接続される複数の前記メモリチップを有し、
前記カウンタ部は、複数の前記メモリチップがそれぞれ有する前記複数の記憶領域のうち、前記複数の貫通電極群の各々に接続される複数の記憶領域を含む記憶領域群毎に、カウンタのカウンタ値を更新し、
前記要求発行部は、前記領域情報が示す記憶領域に対するアクセス要求と、前記領域情報が示す記憶領域を含む記憶領域群に隣接する記憶領域群に含まれる記憶領域に対するアクセス要求とを所定の時間間隔を空けて前記メモリに出力すること
を特徴とする付記1ないし付記11のいずれか1項に記載のプロセッサ。
(付記13)
複数の貫通電極を各々含む複数の貫通電極群と、前記複数の貫通電極群に接続される複数の記憶領域を有するメモリチップとを含むメモリのアクセスを制御するメモリコントローラによるメモリアクセス方法において、
前記メモリコントローラが有するアドレスフィルタ部が、前記メモリからデータを読み出す読み出しアクセス要求に対応して前記メモリから出力される応答に、データのエラーが前記メモリにより訂正されたことを示すエラー情報が含まれる場合であって、前記読み出しアクセス要求に含まれるアクセスアドレスにおいてデータのエラーが初めて訂正されたことを判定した場合、前記読み出しアクセス要求に含まれるアクセスアドレスをエラーアドレスとして出力し、
前記メモリコントローラが有するカウンタ部が、前記複数の貫通電極群の各々に対応して設けられる複数のカウンタのうち、受信した前記エラーアドレスが示す記憶領域に接続される貫通電極群に対応するカウンタのカウンタ値を更新し、
前記メモリコントローラが有する領域情報出力部が、カウンタ値が所定の回数を超えたカウンタに対応する貫通電極群に接続される記憶領域を示す領域情報を出力し、
前記メモリコントローラが有する要求発行部が、前記領域情報出力部から出力される領域情報が示す記憶領域に対するアクセス要求と、前記領域情報出力部から出力される領域情報が示す記憶領域に隣接する記憶領域に対するアクセス要求とを所定の時間間隔を空けて前記メモリに出力すること
を特徴とするメモリアクセス方法。
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。
10…プロセッサ;20…メモリ;30…メモリコントローラ;32…アドレスフィルタ部;32a…保持領域;34…カウンタ部;34a…カウンタ;36…領域情報出力部;36a…比較器;36b…閾値保持部;38…要求発行部;39…応答制御部;100、100A…プロセッサ;110…プロセッサコア;120…キャッシュメモリ;200…メモリ;210…メモリ部;220…メモリ制御部;300…メモリコントローラ;320、320A…アドレスフィルタ部;322、322A…エラー履歴保持部;324、324A…出力制御部;340…カウンタ部;342…アドレスデコーダ;344…カウンタ;346、348…情報保持部;360…領域情報出力部;362…比較部;364…閾値保持部;380…コマンド発行制御部;382…一致判定部;384、386…重複判定部;388…ステートマシン;389…タイマ;390…コマンド受信制御部;700…制御基板;710…サービスプロセッサ;720…不揮発性メモリ;CNT…カウンタ値:CNT0…訂正回数;MC…メモリチップ;MREQ0、MREQ…メモリアクセス要求;MG…記憶領域群;MR…記憶領域;PCE…過去超過情報;PUE…過去エラー情報;VG…貫通電極群

Claims (9)

  1. 複数の貫通電極を各々含む複数の貫通電極群と、前記複数の貫通電極群に接続される複数の記憶領域を有するメモリチップとを含むメモリのアクセスを制御するメモリコントローラを含むプロセッサにおいて、
    前記メモリコントローラは、
    前記メモリからデータを読み出す読み出しアクセス要求に対応して前記メモリから出力される応答に、データのエラーが前記メモリにより訂正されたことを示すエラー情報が含まれる場合であって、前記読み出しアクセス要求に含まれるアクセスアドレスにおいてデータのエラーが初めて訂正されたことを判定した場合、前記読み出しアクセス要求に含まれるアクセスアドレスをエラーアドレスとして出力するアドレスフィルタ部と、
    前記複数の貫通電極群の各々に対応する複数のカウンタを含み、受信した前記エラーアドレスが示す記憶領域に接続される貫通電極群に対応するカウンタのカウンタ値を更新するカウンタ部と、
    カウンタ値が所定の回数を超えたカウンタに対応する貫通電極群に接続される記憶領域を示す領域情報を出力する領域情報出力部と、
    前記領域情報出力部から出力される領域情報が示す記憶領域に対するアクセス要求と、前記領域情報出力部から出力される領域情報が示す記憶領域に隣接する記憶領域に対するアクセス要求とを所定の時間間隔を空けて前記メモリに出力する要求発行部と
    を備えることを特徴とするプロセッサ。
  2. 前記要求発行部は、
    前記メモリに出力するアクセス要求に含まれるアクセスアドレスが示すアクセス対象の記憶領域が、前記領域情報出力部が出力する領域情報が示す記憶領域のいずれかと一致するかを判定する一致判定部と、
    前記一致判定部が一致を判定した場合、前記アクセス対象の記憶領域のアクセス動作と、前記アクセス対象の記憶領域に隣接する記憶領域のアクセス動作とが重複するかを判定する第1の重複判定部と、
    前記一致判定部が不一致を判定した場合、前記アクセス対象の記憶領域のアクセス動作と、前記アクセス対象の記憶領域に隣接する記憶領域のうち、前記領域情報出力部が出力する領域情報に対応する記憶領域のアクセス動作とが重複するかを判定する第2の重複判定部と、
    前記第1の重複判定部または前記第2の重複判定部が、アクセス動作の重複を判定した場合、前記アクセス要求の前記メモリへの出力を、アクセス動作の重複が発生しないタイミングまで待機させるタイミング調整部と
    を備えることを特徴とする請求項1に記載のプロセッサ。
  3. 前記アドレスフィルタ部は、
    アクセスアドレスを保持する保持部と、
    読み出しアクセス要求に対応する応答が前記エラー情報を含み、かつ、読み出しアクセス要求に対応する応答に含まれるアクセスアドレスが前記保持部に保持されていない場合、前記エラーアドレスを前記カウンタ部に出力するとともに前記保持部に格納し、読み出しアクセス要求に対応する応答が前記エラー情報を含み、かつ、読み出しアクセス要求に対応する応答に含まれるアクセスアドレスが前記保持部に保持されている場合、前記エラーアドレスの前記カウンタ部への出力を抑止する出力制御部と
    を備えることを特徴とする請求項1または請求項2に記載のプロセッサ。
  4. 前記保持部は、データのエラーが訂正された回数を示す訂正回数をアクセスアドレスとともに保持する複数のエントリを有し、
    前記出力制御部は、
    読み出しアクセス要求に対応する応答が前記エラー情報を含む場合であって、応答に含まれるアクセスアドレスが前記複数のエントリのいずれにも保持されていない場合、空いているエントリのいずれかにアクセスアドレスを格納し、アクセスアドレスを格納したエントリが保持する訂正回数を1回に設定し、
    読み出しアクセス要求に対応する応答が前記エラー情報を含む場合であって、応答に含まれるアクセスアドレスが前記複数のエントリのいずれかに保持されている場合、アクセスアドレスを保持するエントリに保持された訂正回数を更新し、
    前記複数のエントリの全てがアクセスアドレスを保持する場合、前記複数のエントリのうち、訂正回数が1回のエントリの少なくとも1つを解放すること
    を特徴とする請求項3に記載のプロセッサ。
  5. 前記保持部は、データのエラーが訂正された回数を示す訂正回数をアクセスアドレスとともに保持する複数のエントリを有し、
    前記出力制御部は、
    読み出しアクセス要求に対応する応答が前記エラー情報を含む場合であって、応答に含まれるアクセスアドレスが前記複数のエントリのいずれにも保持されていない場合、空いているエントリのいずれかにアクセスアドレスを格納し、アクセスアドレスを格納したエントリが保持する訂正回数を1回に設定し、
    読み出しアクセス要求に対応する応答が前記エラー情報を含む場合であって、応答に含まれるアクセスアドレスが前記複数のエントリのいずれかに保持されている場合、アクセスアドレスを保持するエントリに保持された訂正回数を更新し、
    前記複数のエントリのうち、訂正回数が1回のエントリの少なくとも1つを、前記エラー情報を含む応答を所定の回数受信する毎に解放すること
    を特徴とする請求項3に記載のプロセッサ。
  6. 前記カウンタ部は、貫通電極群に接続される記憶領域で発生したデータのエラーを前記メモリが訂正した回数が過去に前記所定の回数を超えたことを示す過去超過情報を保持する複数の第1の情報保持部を、前記複数のカウンタの各々に対応して有し、
    前記領域情報出力部は、前記複数の第1の情報保持部のいずれかが前記過去超過情報を保持する場合、前記過去超過情報を保持する第1の情報保持部に対応するカウンタのカウンタ値に拘わりなく、前記過去超過情報を保持する第1の情報保持部に対応する貫通電極群に接続される記憶領域を示す領域情報を前記要求発行部に出力すること
    を特徴とする請求項1ないし請求項5のいずれか1項に記載のプロセッサ。
  7. 前記カウンタ部は、貫通電極群に接続される記憶領域で訂正不可能なデータのエラーが過去に発生したことを示す過去エラー情報を保持する複数の第2の情報保持部を、前記複数のカウンタの各々に対応して有し、
    前記領域情報出力部は、前記複数の第2の情報保持部のいずれかが前記過去エラー情報を保持する場合、前記過去エラー情報を保持する第2の情報保持部に対応するカウンタのカウンタ値に拘わりなく、前記過去エラー情報を保持する第2の情報保持部に対応する貫通電極群に接続される記憶領域を示す領域情報を前記要求発行部に出力すること
    を特徴とする請求項1ないし請求項6のいずれか1項に記載のプロセッサ。
  8. 前記メモリは、前記複数の貫通電極群を介して接続される複数の前記メモリチップを有し、
    前記カウンタ部は、複数の前記メモリチップがそれぞれ有する前記複数の記憶領域のうち、前記複数の貫通電極群の各々に接続される複数の記憶領域を含む記憶領域群毎に、カウンタのカウンタ値を更新し、
    前記要求発行部は、前記領域情報が示す記憶領域に対するアクセス要求と、前記領域情報が示す記憶領域を含む記憶領域群に隣接する記憶領域群に含まれる記憶領域に対するアクセス要求とを所定の時間間隔を空けて前記メモリに出力すること
    を特徴とする請求項1ないし請求項7のいずれか1項に記載のプロセッサ。
  9. 複数の貫通電極を各々含む複数の貫通電極群と、前記複数の貫通電極群に接続される複数の記憶領域を有するメモリチップとを含むメモリのアクセスを制御するメモリコントローラによるメモリアクセス方法において、
    前記メモリコントローラが有するアドレスフィルタ部が、前記メモリからデータを読み出す読み出しアクセス要求に対応して前記メモリから出力される応答に、データのエラーが前記メモリにより訂正されたことを示すエラー情報が含まれる場合であって、前記読み出しアクセス要求に含まれるアクセスアドレスにおいてデータのエラーが初めて訂正されたことを判定した場合、前記読み出しアクセス要求に含まれるアクセスアドレスをエラーアドレスとして出力し、
    前記メモリコントローラが有するカウンタ部が、前記複数の貫通電極群の各々に対応して設けられる複数のカウンタのうち、受信した前記エラーアドレスが示す記憶領域に接続される貫通電極群に対応するカウンタのカウンタ値を更新し、
    前記メモリコントローラが有する領域情報出力部が、カウンタ値が所定の回数を超えたカウンタに対応する貫通電極群に接続される記憶領域を示す領域情報を出力し、
    前記メモリコントローラが有する要求発行部が、前記領域情報出力部から出力される領域情報が示す記憶領域に対するアクセス要求と、前記領域情報出力部から出力される領域情報が示す記憶領域に隣接する記憶領域に対するアクセス要求とを所定の時間間隔を空けて前記メモリに出力すること
    を特徴とするメモリアクセス方法。
JP2017127003A 2017-06-29 2017-06-29 プロセッサおよびメモリアクセス方法 Expired - Fee Related JP6866785B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017127003A JP6866785B2 (ja) 2017-06-29 2017-06-29 プロセッサおよびメモリアクセス方法
US16/011,685 US10649831B2 (en) 2017-06-29 2018-06-19 Processor and memory access method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017127003A JP6866785B2 (ja) 2017-06-29 2017-06-29 プロセッサおよびメモリアクセス方法

Publications (2)

Publication Number Publication Date
JP2019012305A JP2019012305A (ja) 2019-01-24
JP6866785B2 true JP6866785B2 (ja) 2021-04-28

Family

ID=64738769

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017127003A Expired - Fee Related JP6866785B2 (ja) 2017-06-29 2017-06-29 プロセッサおよびメモリアクセス方法

Country Status (2)

Country Link
US (1) US10649831B2 (ja)
JP (1) JP6866785B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020240239A1 (en) 2019-05-31 2020-12-03 Micron Technology, Inc. Memory component for a system-on-chip device
US11194643B1 (en) * 2020-06-03 2021-12-07 Micron Technology, Inc. Access operation status signaling for memory systems
KR20220143450A (ko) * 2021-04-16 2022-10-25 에스케이하이닉스 주식회사 시스템 버퍼를 포함하는 메모리 시스템 및 이의 동작 방법
US12210780B2 (en) * 2022-09-28 2025-01-28 Advanced Micro Devices, Inc. Filtered responses of memory operation messages
US12287700B2 (en) 2023-04-06 2025-04-29 Sap Se Systems and methods for predictive memory maintenance visualization
US12511180B2 (en) * 2023-04-27 2025-12-30 Sap Se Systems and methods for predictive memory maintenance
US12277029B2 (en) 2023-04-27 2025-04-15 Sap Se Systems and methods for predictive memory maintenance
US20250383947A1 (en) * 2024-06-17 2025-12-18 Advanced Micro Devices, Inc. Per row activation counting error handling

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5974576A (en) 1996-05-10 1999-10-26 Sun Microsystems, Inc. On-line memory monitoring system and methods
JP2003346652A (ja) * 2002-05-31 2003-12-05 Matsushita Electric Ind Co Ltd プラズマディスプレイパネルの製造方法と焼成装置
JP4205553B2 (ja) * 2003-11-06 2009-01-07 エルピーダメモリ株式会社 メモリモジュール及びメモリシステム
JP4941051B2 (ja) * 2007-03-29 2012-05-30 日本電気株式会社 メモリ制御方法、メモリシステム、およびプログラム
US20090132876A1 (en) * 2007-11-19 2009-05-21 Ronald Ernest Freking Maintaining Error Statistics Concurrently Across Multiple Memory Ranks
JP5451087B2 (ja) * 2009-01-26 2014-03-26 エヌイーシーコンピュータテクノ株式会社 障害処理装置および方法
US8443263B2 (en) * 2009-12-30 2013-05-14 Sandisk Technologies Inc. Method and controller for performing a copy-back operation
US8612809B2 (en) * 2009-12-31 2013-12-17 Intel Corporation Systems, methods, and apparatuses for stacked memory
JP5618204B2 (ja) 2010-11-17 2014-11-05 Necプラットフォームズ株式会社 障害処理装置、それを用いた情報処理装置及び情報処理装置の障害処理方法
US9606851B2 (en) * 2015-02-02 2017-03-28 International Business Machines Corporation Error monitoring of a memory device containing embedded error correction
US9535787B2 (en) * 2015-02-12 2017-01-03 International Business Machines Corporation Dynamic cache row fail accumulation due to catastrophic failure

Also Published As

Publication number Publication date
JP2019012305A (ja) 2019-01-24
US10649831B2 (en) 2020-05-12
US20190004896A1 (en) 2019-01-03

Similar Documents

Publication Publication Date Title
JP6866785B2 (ja) プロセッサおよびメモリアクセス方法
US10446253B2 (en) Semiconductor memory device and repair method thereof
KR101873526B1 (ko) 에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법
US8060698B2 (en) Method and apparatus for controlling degradation data in cache
US7694093B2 (en) Memory module and method for mirroring data by rank
US7656727B2 (en) Semiconductor memory device and system providing spare memory locations
KR100337218B1 (ko) 스크루빙 및 스페어링을 향상시킨 컴퓨터 램 메모리 시스템
KR101203764B1 (ko) 메모리 셀프-리프레시 전력을 절약하기 위한 시스템들, 방법들 및 장치들
US20220374309A1 (en) Semiconductor memory devices
US8276039B2 (en) Error detection device and methods thereof
US7996710B2 (en) Defect management for a semiconductor memory system
US9959164B2 (en) Semiconductor device and driving method thereof
US9065481B2 (en) Bad wordline/array detection in memory
JPS6072048A (ja) メモリ訂正装置
US20170132072A1 (en) Semiconductor device
US9459951B2 (en) Dynamic cache row fail accumulation due to catastrophic failure
US7404118B1 (en) Memory error analysis for determining potentially faulty memory components
US20080189481A1 (en) Methods and systems for storing data based on a reliability requirement
US12354692B2 (en) Error detection, correction, and media management on a dram device
US20090287957A1 (en) Method for controlling a memory module and memory control unit
US20150095564A1 (en) Apparatus and method for selecting memory outside a memory array

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20170803

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20170803

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170804

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20180214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20180219

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20180219

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200310

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210217

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: 20210309

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210322

R150 Certificate of patent or registration of utility model

Ref document number: 6866785

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees