JP6164003B2 - メモリ制御装置、情報処理装置、及び情報処理装置の制御方法 - Google Patents

メモリ制御装置、情報処理装置、及び情報処理装置の制御方法 Download PDF

Info

Publication number
JP6164003B2
JP6164003B2 JP2013198656A JP2013198656A JP6164003B2 JP 6164003 B2 JP6164003 B2 JP 6164003B2 JP 2013198656 A JP2013198656 A JP 2013198656A JP 2013198656 A JP2013198656 A JP 2013198656A JP 6164003 B2 JP6164003 B2 JP 6164003B2
Authority
JP
Japan
Prior art keywords
data
write
write data
area
destination 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
JP2013198656A
Other languages
English (en)
Other versions
JP2015064770A (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 JP2013198656A priority Critical patent/JP6164003B2/ja
Priority to US14/447,671 priority patent/US9612891B2/en
Publication of JP2015064770A publication Critical patent/JP2015064770A/ja
Application granted granted Critical
Publication of JP6164003B2 publication Critical patent/JP6164003B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703—Error 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/0706—Error 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/073—Error 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
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703—Error 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/0751—Error or fault detection not based on redundancy
    • G06F11/0763—Error or fault detection not based on redundancy by bit configuration check, e.g. of formats or tags
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703—Error 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/0766—Error or fault reporting or storing
    • G06F11/0772—Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00—Error detection; Error correction; Monitoring
    • G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008—Adding 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/1048—Adding 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
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

本発明は、メモリ制御装置、情報処理装置、及び情報処理装置の制御方法に関する。
例えばCPU(Central Processing Unit)等のプロセッサとDIMM(Dual Inline Memory Module)等のメモリとを含むシステムにおいて扱われるデータは、一般に、ECC(Error Correcting Code)などのコードによって保護されている。データに1ビットのエラーが生じた場合は当該エラーを前記コードによって修正することができる。しかし、2ビット以上のエラーは、前記コードによって修正することができず、修正不可能なエラー(Uncorrectable Error;以下UEという)となる。
DIMM等のメモリには、データを格納するデータ領域とは別にECCを格納するECC領域が備えられ、このECC領域にメモリコントローラがECC等の情報を直接書き込むことができる。そこで、プロセッサからメモリへの書込みデータにUEが発生した場合には、プロセッサがメモリコントローラ経由でECC領域に特殊なコードを書き込むことにより、書込みデータに発生したエラーをMarked-UEとして他のエラーと明確に区別できるようにしている。
例えば、3ビットエラーを表す特殊なシンドローム(0x7f)が、Marked-UEを示す特殊なコードとしてECC領域に書き込まれ、通常のECCコードと区別されている。また、当該ECC領域に対応するデータ領域には、Marked-UEの発生箇所を特定可能な情報(エラーID(IDentification),エラー原発情報)も記録される。
これにより、プロセッサは、メモリからデータを読み出す際に、読み出したデータに対応するECC領域に特殊なコードが書き込まれていれば当該データがUEの発生したデータであると認識することができる。したがって、プロセッサの処理に必要のないデータがUEの発生したデータである場合、システムをそのまま運用できる一方、UEの発生したデータが読み出された場合、そのデータがUEの発生したデータであると認識されプロセッサはUEについて何らかの対応を採ることができる。
なお、メモリにおいて、Marked-UEの発生したデータ領域が、Marked-UEの発生していないデータによって上書きされた場合、当該データ領域はMarked-UEの状態ではなくなるので、システムの運用が続けられる。
特公昭62−22199号公報 特表2010−522374号公報
ところで、近年、メモリとして、DRAM(Dynamic Random Access Memory)チップを三次元化しTSV(Through Silicon Via)で接続して処理の高速化を図ったHMC(Hybrid Memory Cube)が提案されている。上述したように、DIMM等のメモリのECC領域には、プロセッサ(メモリコントローラ)がECCコード以外のMarked-UE等の任意の情報を直接書き込むことができる。これに対し、上記HMC等のメモリのECC領域には、ECCコードが自動的に書き込まれるため、プロセッサ(メモリコントローラ)がECCコード以外のMarked-UE等の任意の情報を直接書き込むことができない。
上述のようにメモリへの書込み時に上流側(プロセッサ側)で発生するエラー(例えばUE)に関する情報をメモリに記録できない場合、プロセッサがメモリにおけるデータにUEが発生しているか否かを認識できなくなる。そのため、エラー発生時に、OS(Operating System)によってエラーの発生したページ全体をシステムから切り離すことが考えられる。
しかし、ページ全体をシステムから切り離す場合、緊急度の高い処理の実行中にエラーが発生すると、切離し処理が終わるまで、上記緊急度の高い処理を中断せざるを得ないという課題がある。
また、エラーの発生した領域をページ単位でしか切り離すことができないため、ラージページ採用時には切り離す必要のある範囲が広くなる。したがって、エラーの発生した領域とともに切り離される、エラーの発生していない領域の範囲が広くなり、メモリのデータ領域の使用効率が低くなるという課題もある。
一つの側面で、本発明は、エラー情報を記憶装置に書き込めない場合であってもエラー情報を記録可能にすることを目的とする。
なお、前記目的に限らず、後述する発明を実施するための最良の形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本件の他の目的の一つとして位置付けることができる。
本件のメモリ制御装置は、演算処理装置と記憶装置との間に備えられ、前記演算処理装置から前記記憶装置へのアクセスを制御するメモリ制御装置であって、データ格納領域と、前記演算処理装置から前記記憶装置への第1書込みデータに、エラーが発生したことを示すエラー情報が含まれる場合、前記第1書込みデータを、前記第1書込みデータの書込み先アドレスに対応付けて前記データ格納領域に格納する制御部と、を有する。
一実施形態によれば、エラー情報を記憶装置に書き込めない場合であってもエラー情報を記録することができる。
本実施形態のメモリ制御装置を含む情報処理装置のハードウェア構成および機能構成を示すブロック図である。 図1に示すメモリ制御装置におけるデータ格納領域の内容を示す図である。 図1に示すメモリ制御装置の詳細な構成を示すブロック図である。 本実施形態におけるMarked-UEの発生した書込みデータの構成例を示す図である。 図1および図3に示すメモリ制御装置のライトリクエスト受信時の動作を説明するフローチャートである。 図1および図3に示すメモリ制御装置のリードリクエスト受信時の動作を説明するフローチャートである。
以下、図面を参照して実施の形態を説明する。
〔1〕本実施形態のメモリ制御装置を含む情報処理装置の構成
まず、図1〜図4を参照しながら、本実施形態のメモリ制御装置30を含む情報処理装置1のハードウェア構成および機能構成について説明する。なお、図1は、本実施形態のメモリ制御装置30を含む情報処理装置1のハードウェア構成および機能構成を示すブロック図、図2は、図1に示すメモリ制御装置30におけるデータ格納領域31の内容を示す図である。また、図3は、図1に示すメモリ制御装置30の詳細な構成を示すブロック図、図4は、本実施形態におけるMarked-UEの発生した書込みデータの構成例を示す図である。
図1に示すように、情報処理装置1は、例えば、CPU(演算処理装置)10,メモリ(主記憶装置)20およびメモリコントローラ(メモリ制御装置)30を有するサーバである。
本実施形態において、メモリ20は、データ領域20aおよびECC領域20bを有する、例えば前述したHMC(Hybrid Memory Cube)等のメモリである。このようなメモリ20のECC領域20bには、ECCコードが自動的に書き込まれる。このため、CPU10が、メモリコントローラ30経由で、ECCコード以外のMarked-UE等の任意の情報、例えば、図4を参照しながら後述するようなエラー情報を埋め込まれたECCを直接書き込むことができない。
メモリコントローラ30は、図1および図3に示すように、CPU10とメモリ20との間に備えられ、CPU10からメモリ20へのアクセスを制御するもので、記憶部30aおよび処理部30bを有している。
記憶部30aは、例えばRAM(Random Access Memory),FF(Flip-Flop),レジスタ等によって構成され、本実施形態では、エラー情報格納領域(データ格納領域)31を有している。エラー情報格納領域31は、図2および図3に示すように、例えば4つの領域(レコード)を有し、各領域(各レコード)は、アドレス領域31a,データ領域31b,ECC領域31cおよび有効ビット領域31dを有している。
エラー情報格納領域31の各領域(各レコード)には、Marked-UE(エラー)が発生したことを示すエラー情報を含む、CPU10からメモリ20へのライトデータ(第1書込みデータ)が、書込み先アドレス(アドレス0〜3)に対応付けられて格納される。
ここで、エラー情報を含むライトデータ(Marked-UEの発生した書込みデータ)は、例えば図4に示すように、64ビットのWord部分(データ部分)Data [63:0]と、当該Word部分についての8ビットのECC [7:0]とを含む。Word部分のData [15:0]には、エラー情報としてのエラー原発情報(エラーID)が設定されている。Word部分におけるData 63, 35, 22の3ビットのデータは、反転もしくは不定状態となっている。これに対応し、ECC [7:0]には、Data 63, 35, 22の3箇所にエラーがありシンドロームが7fになる値が設定されている。つまり、ECC [7:0]には、3ビットエラーを表す特殊なシンドローム(0x7f)が、Marked-UEを示す特殊なコードとして埋め込まれている。
そして、エラー情報格納領域31において、アドレス領域31aには、書込み先アドレス(アドレス0〜3)が格納される。データ領域31bには、エラー情報としてのエラー原発情報(エラーID)を含むライトデータのWord部分Data [63:0](図4参照)が格納される。エラー原発情報(エラーID)は、Marked-UEの発生箇所を特定可能な情報である。
また、ECC領域31cには、ECC [7:0](図4参照)が格納される。さらに、有効ビット領域31dには、エラー情報格納領域31の4つの領域(レコード)のそれぞれに格納されている情報(第1書込みデータ)が有効であるか無効であるかを示す値(1ビット情報)が格納される。有効ビット領域31dには、例えば、上記情報が有効である場合に“1”が設定され、上記情報が無効である場合に“0”が設定される。
処理部30bは、例えば、所定のプログラムを実行することにより、図1および図3に示すように、Marked-UEコントローラ32,アドレス比較部33(第1アドレス比較部33−1および第2アドレス比較部33−2),データセレクタ34としての機能を果たす。上記所定のプログラムは、記憶部30aに保存されていてもよいし、メモリコントローラ30外の記憶領域から読み込まれてもよい。
Marked-UEコントローラ(制御部)32は、CPU10からメモリ20へのライトデータ(第1書込みデータ)に、Marked-UEが発生したことを示すエラー情報が含まれる場合、当該ライトデータを、メモリ20に書き込むことなく、当該ライトデータの書込み先アドレスに対応付けてエラー情報格納領域31(領域31a〜31c)に格納する。
このとき、Marked-UEコントローラ32は、複数の領域のうち有効ビット領域31dが無効を示す領域(領域31dに“0”を設定された領域)の有無を判定することで、エラー情報格納領域31に空きが有るか否かを判定する。領域31dに“0”を設定されたエラー情報格納領域31が有る場合つまりエラー情報格納領域31に空きがある場合、Marked-UEコントローラ32は、当該ライトデータを書込み先アドレスに対応付けて格納するとともに、有効ビット領域31dに有効を示す“1”を設定する。
一方、Marked-UEコントローラ32は、領域31dに“0”を設定されたエラー情報格納領域31が無い場合、つまりエラー情報格納領域31に空きが無い場合、当該ライトデータをエラー情報格納領域31に書き込むことができないので、CPU10に対しエラー通知を行なう。
第1アドレス比較部33−1は、CPU10からメモリ20への第2書込みデータ(ライトデータ)に上述したエラー情報が含まれていない場合、つまり第2書込みデータがMarked-UEの生じていない正常なデータである場合、以下の比較を行なう。つまり、第1アドレス比較部33−1は、第2書込みデータの書込み先アドレスと、エラー情報格納領域31において、有効ビット領域31dに有効を示す“1”を設定されたアドレス領域31aに格納される書込み先アドレスとを比較する。
第1アドレス比較部33−1による比較の結果、第2書込みデータの書込み先アドレスとエラー情報格納領域31における第1書込データの書込み先アドレスとが一致する場合、Marked-UEコントローラ32は、以下の処理を行なう。つまり、Marked-UEコントローラ32は、第1書込みデータを格納する領域に対応する有効ビット領域31dに、無効を示す“0”を設定する。そして、Marked-UEコントローラ32は、Marked-UEの生じていない正常なライトデータ(第2書込みデータ)を、メモリ20における第2書込みデータの書込み先アドレス(第1書込みデータの書込み先アドレスと同じ)に書き込む。
一方、第1アドレス比較部33−1による比較の結果、第2書込みデータの書込み先アドレスとエラー情報格納領域31における第1書込みデータの書込み先アドレスとが不一致である場合、Marked-UEコントローラ32は、第2書込みデータを、メモリ20における第2書込みデータの書込み先アドレスにそのまま書き込む。
第2アドレス比較部33−2は、CPU10からメモリ20への読出し要求(リード命令)を受けた場合、以下の比較を行なう。つまり、第2アドレス比較部33−2は、当該読出し要求の読出しアドレスと、エラー情報格納領域31において、有効ビット領域31dに有効を示す“1”を設定されたアドレス領域31aにおける書込み先アドレスとを比較する。
データセレクタ(データ選択部)34は、第2アドレス比較部33−2による比較の結果、読出しアドレスとエラー情報格納領域31における第1書込みデータの書込み先アドレスとが一致する場合、つまり当該読出し要求の読出し対象データがエラー情報格納領域31に格納されている場合、以下の処理を行なう。つまり、データセレクタ34は、エラー情報格納領域31の、第1書込みデータの書込み先アドレスに対応する領域31b,31cから、エラー情報を含む第1書込みデータを選択して読み出し、当該読出し要求に応じた読出しデータ(リードデータ)としてCPU10に返信する。一般に、CPU10のアクセスは、キャッシュ単位(128バイトや256バイト等)で行なわれる。これに対し、データセレクタ34は、CPU10にリードデータを返す際、リードデータを、Marked-UE情報を含むWord部分のデータ(8バイト;領域31b,31cに格納されたデータ)に差し替える。
第2アドレス比較部33−2による比較の結果、読出しアドレスとエラー情報格納領域31における第1書込みデータの書込み先アドレスとが一致しない場合、つまり当該読出し要求の読出し対象データがエラー情報格納領域31に格納されておらずメモリ20に格納されている場合、データセレクタ34は、以下の処理を行なう。つまり、データセレクタ34は、メモリ20の読出しアドレスからデータを選択して読み出し、読出し要求に応じたリードデータとしてCPU10に返信する。
なお、本実施形態において、上述した第1アドレス比較部33−1および第2アドレス比較部33−2としての機能は、図3に示すように、一つのアドレス比較部33によって実現されてもよい。
〔2〕本実施形態のメモリ制御装置を含む情報処理装置の動作
次に、図5および図6を参照しながら、上述のごとく構成された本実施形態のメモリコントローラ30を含むサーバ1の動作について説明する。
〔2−1〕ライトリクエスト受信時の動作
まず、図5に示すフローチャート(ステップS11〜S18)に従って、図1および図3に示すメモリコントローラ30のライトリクエスト受信時の動作について説明する。
Marked-UEコントローラ32によって、CPU10からライトデータを伴うライトリクエスト(書込み要求/書込み命令)が受信されると(ステップS11)、ライトデータがMarked-UE情報を含むか否かが判断される(ステップS12)。なお、Marked-UE情報を含むライトデータ(第1書込データ)は、図4に示すように構成されている。
ライトデータがMarked-UE情報を含んでいる場合(ステップS12のYESルート;ライトデータが上記第1書込みデータである場合)、Marked-UEコントローラ32によって、エラー情報格納領域31に空きが有るか否かが判定される。つまり、エラー情報格納領域31における全ての有効ビット領域31dに、“1”が設定されているか否かが判定される(ステップS13)。
全ての有効ビット領域31dに“1”が設定されていない場合(ステップS13のNOルート)、つまり“0”を設定された有効ビット領域31dが有りエラー情報格納領域31に空きがある場合、Marked-UEコントローラ32によって、ステップS14の処理が実行される。つまり、無効を示す“0”を設定された有効ビット領域31dに対応するアドレス領域31aに、書込み先アドレス(ライトアドレス)がセットされ、当該有効ビット領域31dに有効を示す“1”が設定される。そして、ライトデータおよびECCが、メモリ20に書き込まれることなく、当該有効ビット領域31dに対応する領域31bおよび31cに、書込み先アドレスに対応付けて格納される(ステップS14)。
全ての有効ビット領域31dに“1”が設定されている場合(ステップS13のYESルート)、つまり“0”を設定された有効ビット領域31dが無くエラー情報格納領域31に空きが無い場合、Marked-UEコントローラ32によって、ステップS15の処理が実行される。つまり、ライトデータをエラー情報格納領域31に書き込むことができないので、エラーの割り込みがアサートされ、CPU10に対しエラー通知が行なわれる(ステップS15)。
ライトデータがMarked-UE情報を含んでいない場合(ステップS12のNOルート;ライトデータがMarked-UEの生じていない正常なデータ(上記第2書込みデータ)である場合)、第1アドレス比較部33−1によって、ステップS16の処理が実行される。つまり、第2書込みデータの書込み先アドレスと、エラー情報格納領域31において、有効ビット領域31dに有効を示す“1”を設定されたアドレス領域31aに格納される書込み先アドレスとが比較される(ステップS16)。
第1アドレス比較部33−1による比較の結果、第2書込みデータの書込み先アドレスと同じアドレスが、エラー情報格納領域31における有効領域に格納されている場合(ステップS16のYESルート)、Marked-UEコントローラ32によって、ステップS17の処理が実行される。つまり、第2書込みデータの書込み先アドレスと同じアドレスが格納されている領域についての有効ビット領域31dに、無効を示す“0”が設定される。これにより、エラー情報格納領域31に保存されている、Marked-UEの生じたライトデータ(第1書込みデータ)は実質的に消去される。そして、Marked-UEの生じていない正常なライトデータ(第2書込みデータ)は、メモリ20へのライト処理によって、メモリ20における第2書込みデータの書込み先アドレス(第1書込みデータの書込み先アドレスと同じ)に書き込まれる(ステップS17)。
このようにして、エラー情報格納領域31においてエラー情報(Marked-UE情報)が格納されているアドレスに対し、Marked-UEの生じていない正常なライトデータの書込み要求があった場合、対応する有効ビット領域31dに無効を示す“0”が設定され、正常なライトデータがメモリ20の対応アドレスに書き込まれる。
一方、第1アドレス比較部33−1による比較の結果、第2書込みデータの書込み先アドレスと同じアドレスが、エラー情報格納領域31における有効領域に格納されていない場合(ステップS16のNOルート)、Marked-UEコントローラ32によってステップS18の処理(メモリ20への通常のライト処理)が実行される。つまり、第2書込みデータは、エラー情報格納領域31に格納されることなく、メモリ20における第2書込みデータの書込み先アドレスにそのまま書き込まれる(ステップS18)。
〔2−2〕リードリクエスト受信時の動作
ついで、図6に示すフローチャート(ステップS21〜S24)に従って、図1および図3に示すメモリコントローラ30のリードリクエスト受信時の動作について説明する。
メモリコントローラ30によって、CPU10からメモリ20へのリードリクエスト(読出し要求/読出し命令)が受信されると(ステップS21)、第2アドレス比較部33−2によって、ステップS22の処理が実行される。つまり、リードリクエストのリードアドレス(読出しアドレス)と、エラー情報格納領域31において、有効ビット領域31dに有効を示す“1”を設定されたアドレス領域31aにおける書込み先アドレスとが比較される(ステップS22)。
第2アドレス比較部33−2による比較の結果、リードリクエストのリードアドレスと同じアドレスが、エラー情報格納領域31における有効領域に格納されている場合(ステップS22のYESルート)、データセレクタ34によって、ステップS23の処理が実行される。つまり、エラー情報格納領域31の、リードアドレスと同じアドレスに対応する領域31b,31cから、エラー情報を含む第1書込みデータ(DATA+ECC)が読み出され、リードリクエストに応じたリードデータとしてCPU10に返信される(ステップS23)。したがって、CPU10へのリードデータは、メモリ20からのデータではなく、エラー情報格納領域31からのMarked-UE情報を含むWord部分のデータ(領域31b,31cに格納されたデータ)に差し替えられる。
一方、第2アドレス比較部33−2による比較の結果、リードリクエストのリードアドレスと同じアドレスが、エラー情報格納領域31における有効領域に格納されていない場合(ステップS22のNOルート)、データセレクタ34によって、ステップS24の処理が実行される。つまり、メモリからの通常のリード処理が実行され、メモリ20のリードアドレスからデータが読み出され、リードリクエストに応じたリードデータとしてCPU10に返信される(ステップS24)。
〔3〕本実施形態のメモリ制御装置を含む情報処理装置の効果
本実施形態のメモリコントローラ30およびサーバ1によれば、メモリ20のECC領域20bにプロセッサメモリシステムがエラー情報(Marked-UE)を直接書き込むことのできないメモリ(例えばHMC)を採用する場合であっても、エラー情報をメモリコントローラ30のエラー情報格納領域31に記録することが可能になる。
これにより、Marked-UEの発生したデータはメモリコントローラ30のエラー情報格納領域31から読み出される。そして、CPU10は、読み出されたデータに対応するECC領域に特殊なコードが書き込まれていれば当該データがUEの発生したデータであると認識することができる。したがって、CPU10の処理に必要のないデータがUEの発生したデータである場合、システムをそのまま運用できる一方、UEの発生したデータが読み出された場合、そのデータがUEの発生したデータであると認識されCPU10はUEについて何らかの対応を採ることができる。
また、Marked-UEの発生頻度は高くはないため、メモリコントローラ30のエラー情報格納領域31として確保すべき記憶領域は少容量でよい。さらに、一つのエラーについて格納すべきデータは、アドレス情報,エラー原発情報(例えば8バイト),ECCおよび有効ビットを組み合わせた情報で、少容量で済む。このため、本実施形態の機能は、小規模な回路で構成し実現することができる。
一方、前述したように、エラー発生時には、OSによってエラーの発生したページ全体をシステムから切り離すことが考えられ、この場合、緊急度の高い処理の実行中にエラーが発生すると、切離し処理が終わるまで、上記緊急度の高い処理を中断せざるを得なかった。また、エラーの発生した領域をページ単位でしか切り離すことができないため、ラージページ採用時には切り離す必要のある範囲が広くなっていた。
これに対し、本実施形態のメモリコントローラ30を採用した場合、緊急度の高い処理の実行中にエラーが発生しても、エラー発生時点で最低限の処理(エラー情報格納領域31への格納)を行ない、後で残りの処理を行なうことが可能になる。したがって、上記緊急度の高い処理をほとんど中断することなく、UE等のエラーに対応することができる。
また、本実施形態のメモリコントローラ30を採用した場合、ページ全体を切り離す必要がなくなり、エラーの発生した領域を含む処理単位(データブロック)だけを使用しないようにしてエラーに対応することができる。したがって、メモリのデータ領域の使用効率を低下させることなく、UE等のエラーに対応することができる。
〔4〕その他
以上、本発明の好ましい実施形態について詳述したが、本発明は、係る特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
上述した実施形態では、エラー情報格納領域(データ格納領域)31における領域(レコード)の数が4である場合について説明したが、本発明はこれに限定されるものではない。
また、上述したMarked-UEコントローラ(制御部)32,アドレス比較部33(第1アドレス比較部33−1および第2アドレス比較部33−2),データセレクタ(データ選択部)34としての機能を含む、メモリコントローラ(メモリ制御装置)30の機能の全部もしくは一部は、コンピュータ(MPU(Micro-Processing Unit),CPU,各種端末を含む)が所定のプログラムを実行することによって実現されてもよい。
そのプログラムは、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RWなど),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD−RW,DVD+R,DVD+RWなど),ブルーレイディスク等のコンピュータ読取可能な記録媒体に記録された形態で提供される。この場合、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。
〔5〕付記
以上の実施形態に関し、さらに以下の付記を開示する。
(付記1)
演算処理装置と記憶装置との間に備えられ、前記演算処理装置から前記記憶装置へのアクセスを制御するメモリ制御装置であって、
データ格納領域と、
前記演算処理装置から前記記憶装置への第1書込みデータに、エラーが発生したことを示すエラー情報が含まれる場合、前記第1書込みデータを、前記第1書込みデータの書込み先アドレスに対応付けて前記データ格納領域に格納する制御部と、を有するメモリ制御装置。
(付記2)
前記データ格納領域には、複数の前記第1書込みデータをそれぞれ格納する複数の領域が備えられ、
前記領域毎に、前記領域に格納される前記第1書込みデータの有効/無効を示すビットが設けられ、
前記制御部は、前記複数の領域のうち前記ビットが無効を示す領域に、前記第1書込みデータを前記書込み先アドレスに対応付けて格納する、付記1記載のメモリ制御装置。
(付記3)
前記制御部は、前記第1書込みデータを書き込む、前記ビットが無効を示す領域が無い場合、前記演算処理装置に対しエラー通知を行なう、付記2記載のメモリ制御装置。
(付記4)
前記演算処理装置から前記記憶装置への第2書込みデータに前記エラー情報が含まれていない場合、前記第2書込みデータの書込み先アドレスと、前記複数の領域のうち前記ビットが有効を示す領域における前記第1書込みデータの書込み先アドレスとを比較する第1アドレス比較部を有し、
前記第1アドレス比較部による比較の結果、前記第2書込みデータの書込み先アドレスと前記第1書込みデータの書込み先アドレスとが一致する場合、前記制御部は、前記第1書込みデータを格納する前記領域の前記ビットを無効にするとともに、前記第2書込みデータを前記記憶装置における前記第2書込みデータの書込み先アドレスに書き込む、付記2または付記3に記載のメモリ制御装置。
(付記5)
前記第1アドレス比較部による比較の結果、前記第2書込みデータの書込み先アドレスと前記第1書込みデータの書込み先アドレスとが不一致である場合、前記制御部は、前記第2書込みデータを前記記憶装置における前記第2書込みデータの書込み先アドレスに書き込む、付記4記載のメモリ制御装置。
(付記6)
前記演算処理装置から前記記憶装置への読出し要求を受けた場合、前記読出し要求の読出しアドレスと、前記複数の領域のうち前記ビットが有効を示す領域における前記第1書込みデータの書込み先アドレスとを比較する第2アドレス比較部と、
前記第2アドレス比較部による比較の結果、前記読出しアドレスと前記第1書込みデータの書込み先アドレスとが一致する場合、前記データ格納領域の、前記第1書込みデータの書込み先アドレスに対応する領域から、前記第1書込みデータを選択して読み出し、前記読出し要求に対する読出しデータとして前記演算処理装置に返信するデータ選択部と、を有する、付記2〜付記5のいずれか一項に記載のメモリ制御装置。
(付記7)
前記第2アドレス比較部による比較の結果、前記読出しアドレスと前記第1書込みデータの書込み先アドレスとが不一致である場合、前記データ選択部は、前記記憶装置の前記読出しアドレスからデータを選択して読み出し、前記読出し要求に対する読出しデータとして前記演算処理装置に返信する、付記6記載のメモリ制御装置。
(付記8)
前記データ格納領域に格納される前記第1書込みデータは、前記エラー情報としてのエラー原発情報を含むデータ部分と、前記エラーが発生したことを示すコードを前記エラー情報として埋め込まれた、当該データ部分についてのECC(Error Correcting Code)とを含む、付記1〜付記7のいずれか一項に記載のメモリ制御装置。
(付記9)
前記記憶装置は、前記第1書込みデータについてのECC(Error Correcting Code)領域に対し前記エラー情報を埋め込まれた前記ECCを書き込むことのできないメモリである、付記8記載のメモリ制御装置。
(付記10)
前記メモリは、HMC(Hybrid Memory Cube)である、付記9記載のメモリ制御装置。
(付記11)
演算処理装置と、
記憶装置と、
前記演算処理装置と前記記憶装置との間に備えられ、前記演算処理装置から前記記憶装置へのアクセスを制御するメモリ制御装置と、を有し、
前記メモリ制御装置は、
データ格納領域と、
前記演算処理装置から前記記憶装置への第1書込みデータに、エラーが発生したことを示すエラー情報が含まれる場合、前記第1書込みデータを、前記第1書込みデータの書込み先アドレスに対応付けて前記データ格納領域に格納する制御部と、を有する、情報処理装置。
(付記12)
前記データ格納領域には、複数の前記第1書込みデータをそれぞれ格納する複数の領域が備えられ、
前記領域毎に、前記領域に格納される前記第1書込みデータの有効/無効を示すビットが設けられ、
前記制御部は、前記複数の領域のうち前記ビットが無効を示す領域に、前記第1書込みデータを前記書込み先アドレスに対応付けて格納する、付記11記載の情報処理装置。
(付記13)
前記制御部は、前記第1書込みデータを書き込む、前記ビットが無効を示す領域が無い場合、前記演算処理装置に対しエラー通知を行なう、付記12記載の情報処理装置。
(付記14)
前記メモリ制御装置は、
前記演算処理装置から前記記憶装置への第2書込みデータに前記エラー情報が含まれていない場合、前記第2書込みデータの書込み先アドレスと、前記複数の領域のうち前記ビットが有効を示す領域における前記第1書込みデータの書込み先アドレスとを比較する第1アドレス比較部を有し、
前記第1アドレス比較部による比較の結果、前記第2書込みデータの書込み先アドレスと前記第1書込みデータの書込み先アドレスとが一致する場合、前記制御部は、前記第1書込みデータを格納する前記領域の前記ビットを無効にするとともに、前記第2書込みデータを前記記憶装置における前記第2書込みデータの書込み先アドレスに書き込む、付記12または付記13に記載の情報処理装置。
(付記15)
前記第1アドレス比較部による比較の結果、前記第2書込みデータの書込み先アドレスと前記第1書込みデータの書込み先アドレスとが不一致である場合、前記制御部は、前記第2書込みデータを前記記憶装置における前記第2書込みデータの書込み先アドレスに書き込む、付記14記載の情報処理装置。
(付記16)
前記メモリ制御装置は、
前記演算処理装置から前記記憶装置への読出し要求を受けた場合、前記読出し要求の読出しアドレスと、前記複数の領域のうち前記ビットが有効を示す領域における前記第1書込みデータの書込み先アドレスとを比較する第2アドレス比較部と、
前記第2アドレス比較部による比較の結果、前記読出しアドレスと前記第1書込みデータの書込み先アドレスとが一致する場合、前記データ格納領域の、前記第1書込みデータの書込み先アドレスに対応する領域から、前記第1書込みデータを選択して読み出し、前記読出し要求に対する読出しデータとして前記演算処理装置に返信するデータ選択部と、を有する、付記12〜付記15のいずれか一項に記載の情報処理装置。
(付記17)
前記第2アドレス比較部による比較の結果、前記読出しアドレスと前記第1書込みデータの書込み先アドレスとが不一致である場合、前記データ選択部は、前記記憶装置の前記読出しアドレスからデータを選択して読み出し、前記読出し要求に対する読出しデータとして前記演算処理装置に返信する、付記16記載の情報処理装置。
(付記18)
前記データ格納領域に格納される前記第1書込みデータは、前記エラー情報としてのエラー原発情報を含むデータ部分と、前記エラーが発生したことを示すコードを前記エラー情報として埋め込まれた、当該データ部分についてのECC(Error Correcting Code)とを含む、付記11〜付記17のいずれか一項に記載の情報処理装置。
(付記19)
前記記憶装置は、前記第1書込みデータについてのECC(Error Correcting Code)領域に対し前記エラー情報を埋め込まれた前記ECCを書き込むことのできないメモリである、付記18記載の情報処理装置。
(付記20)
演算処理装置と記憶装置との間において前記演算処理装置から前記記憶装置へのアクセスを制御するメモリ制御装置を有する情報処理装置の制御方法であって、
前記演算処理装置から前記記憶装置への書込みデータを受け、
前記書込みデータに、エラーが発生したことを示すエラー情報が含まれる場合、前記書込みデータを、前記書込みデータの書込み先アドレスに対応付けて前記メモリ制御装置におけるデータ格納領域に格納する、情報処理装置の制御方法。
1 サーバ(情報処理装置)
10 CPU(演算処理装置)
20 メモリ(主記憶装置;HMC)
20a データ領域
20b ECC領域
30 メモリコントローラ(メモリ制御装置)
30a 記憶部(RAM,FF,レジスタ)
30b 処理部
31 エラー情報格納領域(データ格納領域)
31a アドレス領域
31b データ領域
31c ECC領域
31d 有効ビット領域
32 Marked-UEコントローラ(制御部)
33 アドレス比較部
33−1 第1アドレス比較部
33−2 第2アドレス比較部
34 データセレクタ(データ選択部)

Claims (10)

  1. 演算処理装置と記憶装置との間に備えられ、前記演算処理装置から前記記憶装置へのアクセスを制御するメモリ制御装置であって、
    データ格納領域と、
    前記演算処理装置から前記記憶装置への第1書込みデータに、前記演算処理装置では修正不可能なエラーが発生したことを示すエラー情報が含まれる場合、前記第1書込みデータを、前記記憶装置に書き込むことなく、前記第1書込みデータの書込み先アドレスに対応付けて前記データ格納領域に格納する一方、前記エラー情報が含まれていない場合、前記第1書込みデータを前記記憶装置における前記第1書込みデータの書込み先アドレスに書き込む制御部と、を有するメモリ制御装置。
  2. 前記データ格納領域には、複数の前記第1書込みデータをそれぞれ格納する複数の領域が備えられ、
    前記領域毎に、前記領域に格納される前記第1書込みデータの有効/無効を示すビットが設けられ、
    前記制御部は、前記複数の領域のうち前記ビットが無効を示す領域に、前記第1書込みデータを前記書込み先アドレスに対応付けて格納する、請求項1記載のメモリ制御装置。
  3. 前記制御部は、前記第1書込みデータを書き込む、前記ビットが無効を示す領域が無い場合、前記演算処理装置に対しエラー通知を行なう、請求項2記載のメモリ制御装置。
  4. 前記演算処理装置から前記記憶装置への第2書込みデータに前記エラー情報が含まれていない場合、前記第2書込みデータの書込み先アドレスと、前記複数の領域のうち前記ビットが有効を示す領域における前記第1書込みデータの書込み先アドレスとを比較する第1アドレス比較部を有し、
    前記第1アドレス比較部による比較の結果、前記第2書込みデータの書込み先アドレスと前記第1書込みデータの書込み先アドレスとが一致する場合、前記制御部は、前記第1書込みデータを格納する前記領域の前記ビットを無効にするとともに、前記第2書込みデータを前記記憶装置における前記第2書込みデータの書込み先アドレスに書き込む、請求項2または請求項3に記載のメモリ制御装置。
  5. 前記第1アドレス比較部による比較の結果、前記第2書込みデータの書込み先アドレスと前記第1書込みデータの書込み先アドレスとが不一致である場合、前記制御部は、前記第2書込みデータを前記記憶装置における前記第2書込みデータの書込み先アドレスに書き込む、請求項4記載のメモリ制御装置。
  6. 前記演算処理装置から前記記憶装置への読出し要求を受けた場合、前記読出し要求の読出しアドレスと、前記複数の領域のうち前記ビットが有効を示す領域における前記第1書込みデータの書込み先アドレスとを比較する第2アドレス比較部と、
    前記第2アドレス比較部による比較の結果、前記読出しアドレスと前記第1書込みデータの書込み先アドレスとが一致する場合、前記データ格納領域の、前記第1書込みデータの書込み先アドレスに対応する領域から、前記第1書込みデータを選択して読み出し、前記読出し要求に対する読出しデータとして前記演算処理装置に返信するデータ選択部と、を有する、請求項2〜請求項5のいずれか一項に記載のメモリ制御装置。
  7. 前記第2アドレス比較部による比較の結果、前記読出しアドレスと前記第1書込みデータの書込み先アドレスとが不一致である場合、前記データ選択部は、前記記憶装置の前記読出しアドレスからデータを選択して読み出し、前記読出し要求に対する読出しデータとして前記演算処理装置に返信する、請求項6記載のメモリ制御装置。
  8. 前記データ格納領域に格納される前記第1書込みデータは、前記エラー情報としてのエラー原発情報を含むデータ部分と、前記エラーが発生したことを示すコードを前記エラー情報として埋め込まれた、当該データ部分についてのECC(Error Correcting Code)とを含む、請求項1〜請求項7のいずれか一項に記載のメモリ制御装置。
  9. 演算処理装置と、
    記憶装置と、
    前記演算処理装置と前記記憶装置との間に備えられ、前記演算処理装置から前記記憶装置へのアクセスを制御するメモリ制御装置と、を有し、
    前記メモリ制御装置は、
    データ格納領域と、
    前記演算処理装置から前記記憶装置への第1書込みデータに、前記演算処理装置では修正不可能なエラーが発生したことを示すエラー情報が含まれる場合、前記第1書込みデータを、前記記憶装置に書き込むことなく、前記第1書込みデータの書込み先アドレスに対応付けて前記データ格納領域に格納する一方、前記エラー情報が含まれていない場合、前記第1書込みデータを前記記憶装置における前記第1書込みデータの書込み先アドレスに書き込む制御部と、を有する、情報処理装置。
  10. 演算処理装置と記憶装置との間において前記演算処理装置から前記記憶装置へのアクセスを制御するメモリ制御装置を有する情報処理装置の制御方法であって、
    前記演算処理装置から前記記憶装置への第1書込みデータを受け、
    前記第1書込みデータに、前記演算処理装置では修正不可能なエラーが発生したことを示すエラー情報が含まれる場合、前記第1書込みデータを、前記記憶装置に書き込むことなく、前記第1書込みデータの書込み先アドレスに対応付けて前記メモリ制御装置におけるデータ格納領域に格納する一方、前記エラー情報が含まれていない場合、前記第1書込みデータを前記記憶装置における前記第1書込みデータの書込み先アドレスに書き込む、情報処理装置の制御方法。
JP2013198656A 2013-09-25 2013-09-25 メモリ制御装置、情報処理装置、及び情報処理装置の制御方法 Expired - Fee Related JP6164003B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013198656A JP6164003B2 (ja) 2013-09-25 2013-09-25 メモリ制御装置、情報処理装置、及び情報処理装置の制御方法
US14/447,671 US9612891B2 (en) 2013-09-25 2014-07-31 Memory controller, information processing apparatus, and method of controlling information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013198656A JP6164003B2 (ja) 2013-09-25 2013-09-25 メモリ制御装置、情報処理装置、及び情報処理装置の制御方法

Publications (2)

Publication Number Publication Date
JP2015064770A JP2015064770A (ja) 2015-04-09
JP6164003B2 true JP6164003B2 (ja) 2017-07-19

Family

ID=52692122

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013198656A Expired - Fee Related JP6164003B2 (ja) 2013-09-25 2013-09-25 メモリ制御装置、情報処理装置、及び情報処理装置の制御方法

Country Status (2)

Country Link
US (1) US9612891B2 (ja)
JP (1) JP6164003B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10002044B2 (en) 2014-08-19 2018-06-19 Samsung Electronics Co., Ltd. Memory devices and modules
US9916091B2 (en) * 2015-07-13 2018-03-13 Samsung Electronics Co., Ltd. Memory system architecture
US10719387B2 (en) * 2018-04-25 2020-07-21 Oracle International Corporation Memory interface with tamper-evident features to enhance software security

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5525812A (en) 1978-08-08 1980-02-23 Panafacom Ltd Writing system for error correction code
US4951193A (en) * 1986-09-05 1990-08-21 Hitachi, Ltd. Parallel computer with distributed shared memories and distributed task activating circuits
US6009542A (en) * 1998-03-31 1999-12-28 Quantum Corporation Method for preventing transfer of data to corrupt addresses
JP5089901B2 (ja) * 2006-03-28 2012-12-05 株式会社日立製作所 記憶制御装置及び記憶制御装置の制御方法
US8352805B2 (en) * 2006-05-18 2013-01-08 Rambus Inc. Memory error detection
US7900116B2 (en) * 2006-08-07 2011-03-01 Broadcom Corporation Switch with error checking and correcting
US8135935B2 (en) 2007-03-20 2012-03-13 Advanced Micro Devices, Inc. ECC implementation in non-ECC components
US7836372B2 (en) * 2007-06-08 2010-11-16 Apple Inc. Memory controller with loopback test interface
JP2009020944A (ja) * 2007-07-11 2009-01-29 Yokogawa Electric Corp 半導体メモリ装置
JP2009181439A (ja) * 2008-01-31 2009-08-13 Toshiba Corp メモリシステム
US7859937B2 (en) * 2009-01-12 2010-12-28 Arm Limited Apparatus and method for controlling write access to a group of storage elements
WO2011024239A1 (en) * 2009-08-31 2011-03-03 Hitachi, Ltd. Storage system having plurality of flash packages
US8949694B2 (en) * 2011-09-23 2015-02-03 International Business Machines Corporation Address error detection
US9063902B2 (en) * 2012-01-05 2015-06-23 International Business Machines Corporation Implementing enhanced hardware assisted DRAM repair using a data register for DRAM repair selectively provided in a DRAM module
US9208024B2 (en) * 2014-01-10 2015-12-08 Freescale Semiconductor, Inc. Memory ECC with hard and soft error detection and management
US9323602B2 (en) * 2014-01-20 2016-04-26 Freescale Semiconductor, Inc. Error correction with extended CAM
US10061645B2 (en) * 2015-06-30 2018-08-28 Qualcomm Incorporated Memory array and link error correction in a low power memory sub-system

Also Published As

Publication number Publication date
US9612891B2 (en) 2017-04-04
JP2015064770A (ja) 2015-04-09
US20150089281A1 (en) 2015-03-26

Similar Documents

Publication Publication Date Title
US6427215B2 (en) Recovering and relocating unreliable disk sectors when encountering disk drive read errors
KR102328621B1 (ko) 메모리 랭크들을 리매핑하기 위한 휘발성 메모리 모듈
CN116126581A (zh) 内存故障处理方法、装置、系统、设备及存储介质
JP2010009102A (ja) キャッシュメモリ、コンピュータシステム、及びメモリアクセス方法
JP2007133986A (ja) 半導体記憶装置
JPWO2004114115A1 (ja) Raid装置、raid制御方法、及びraid制御プログラム
JP5565340B2 (ja) 試験方法,試験プログラム,及び試験装置
JP2015064770A (ja) メモリ制御装置、情報処理装置、及び情報処理装置の制御方法
JP4576172B2 (ja) 演算処理装置,情報処理装置及び演算処理装置の制御方法
JP6201674B2 (ja) ストレージ制御装置,プログラム及び制御方法
US8533560B2 (en) Controller, data storage device and program product
US8776232B2 (en) Controller capable of preventing spread of computer viruses and storage system and method thereof
US7757118B2 (en) Method and system for detecting and recovering failure command
JP2003345669A (ja) メモリアクセスエラーを防止するシステム及び方法
JP2016014972A (ja) 通信制御装置,ストレージ装置及び通信制御プログラム
JP5213061B2 (ja) ミラーリング制御装置、ミラーリング制御回路、ミラーリング制御方法およびそのプログラム
JP2006004078A (ja) ディスク制御装置、ディスクパトロール方法およびディスクパトロールプログラム
JP2010536112A (ja) 中断された書込みの回復のためのデータ記憶方法、機器およびシステム
JP5510679B2 (ja) ディスクアレイ装置、ディスクアレイシステム、障害経路特定方法、及びプログラム
US10592349B2 (en) Storage control device and storage apparatus
CN110858167A (zh) 一种内存故障隔离方法、装置及设备
CN102057432B (zh) 再现装置、集成电路以及再现方法
CN101281482A (zh) 数据更新方法
CN101206896B (zh) 写遗漏检测器和写遗漏检测方法
JP2010135034A (ja) 情報記録再生装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160606

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170404

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170508

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170605

R150 Certificate of patent or registration of utility model

Ref document number: 6164003

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees