JP5793379B2 - Information processing system, data error detection method, program, and storage medium - Google Patents
Information processing system, data error detection method, program, and storage medium Download PDFInfo
- Publication number
- JP5793379B2 JP5793379B2 JP2011200337A JP2011200337A JP5793379B2 JP 5793379 B2 JP5793379 B2 JP 5793379B2 JP 2011200337 A JP2011200337 A JP 2011200337A JP 2011200337 A JP2011200337 A JP 2011200337A JP 5793379 B2 JP5793379 B2 JP 5793379B2
- Authority
- JP
- Japan
- Prior art keywords
- check value
- data
- monitoring target
- target area
- information
- 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
Links
Images
Landscapes
- Detection And Correction Of Errors (AREA)
Description
本発明の実施形態は、データを冗長化せずに情報記憶装置におけるビットエラーを検出する情報処理システム、データエラー検出方法、プログラム及び記憶媒体に関する。 Embodiments described herein relate generally to an information processing system, a data error detection method, a program, and a storage medium that detect a bit error in an information storage device without making data redundant.
コンピュータの主記憶装置や補助記憶装置等の情報記憶装置には、ビット化け等のデータエラーが発生する場合がある。データエラーを検出する方法としては、データに対するチェック値を算出する方法と、データを冗長化して整合性チェックを行う方法との大きく二つの方法がある。 A data error such as bit corruption may occur in an information storage device such as a main storage device or an auxiliary storage device of a computer. There are two main methods for detecting a data error: a method for calculating a check value for data and a method for performing consistency check by making data redundant.
前者はデータに対するチェックサムやCRCコード等のチェック値を算出してデータに付加し、その後に再びデータからチェック値を算出して両者を比較することによりデータの整合性をチェックする方法である。また、後者の例としては、エラー検出訂正システムを搭載したメモリ装置として、読み出しデータから求められたシンドロームに基づいて有限体要素間の積や和を計算する計算回路を備えてエラー位置探索を行うようにしたものがある(例えば、特許文献1参照)。 The former is a method of checking data consistency by calculating a check value such as a checksum or CRC code for data and adding it to the data, and then calculating a check value from the data again and comparing them. As an example of the latter, a memory device equipped with an error detection and correction system is equipped with a calculation circuit that calculates a product or sum between finite field elements based on a syndrome obtained from read data, and performs an error position search. There is something like that (see, for example, Patent Document 1).
(例えば、特許文献1参照)。 (For example, refer to Patent Document 1).
しかし、データに対するチェック値を算出する方法の場合、チェック値算出中にデータを書き換えることができない。また、データを冗長化して整合性チェックを行う方法の場合は、データを書き換えながらデータの整合性のチェックができるが、データの冗長化が必要であるため、情報記憶装置の本来の記憶容量よりも少ない情報量しか記憶できず、単位情報を保存するのに要するハードウェアコストが冗長化しない場合に比べて高くなる。このように、従来はデータを冗長化せずにデータを書き換えながらデータエラーを検出することができなかった。 However, in the method of calculating the check value for data, the data cannot be rewritten during the check value calculation. In addition, in the case of the method of performing the consistency check by making the data redundant, it is possible to check the consistency of the data while rewriting the data. However, since the redundancy of the data is necessary, it is more than the original storage capacity of the information storage device. However, only a small amount of information can be stored, and the hardware cost required to store the unit information is higher than when no redundancy is provided. As described above, conventionally, a data error cannot be detected while rewriting data without making the data redundant.
本発明の実施形態では、データの冗長化を行わずにデータを書き換えながらデータエラーの検出を行うことができる情報処理システム、データエラー検出方法、プログラム及び記憶媒体を得ることである。 An embodiment of the present invention is to obtain an information processing system, a data error detection method, a program, and a storage medium that can detect a data error while rewriting data without making data redundant.
本発明の実施形態の情報処理システムは、エラー検出プログラム及びデータを格納した情報記憶装置と、エラー検出プログラムを演算実行する中央処理装置とを備える。中央処理装置は、情報記憶装置の中の監視対象領域にあるデータの整合性を確認するための第一チェック値を算出する第一チェック値算出手段と、第一チェック値を算出している途中で監視対象領域にあるデータを書き換える場合にその書き換えによる第一チェック値の変化を表す情報を作成する変化情報作成手段と、第一チェック値の算出が完了したときに第一チェック値及び変化情報作成手段により得られる第一チェック値の変化を表す情報から第二チェック値を繰り返し算出する第二チェック値算出手段と、第二チェック値算出手段で得られた第二チェック値とそれ以前に得られた第二チェック値とを比較することによりデータエラーを判定するデータエラー判定手段とを備える。 An information processing system according to an embodiment of the present invention includes an information storage device that stores an error detection program and data, and a central processing unit that calculates and executes the error detection program. The central processing unit calculates a first check value for calculating the first check value for confirming the consistency of data in the monitoring target area in the information storage device, and is calculating the first check value When the data in the monitoring target area is rewritten, the change information creating means for creating information indicating the change of the first check value due to the rewrite, and the first check value and the change information when the calculation of the first check value is completed Second check value calculation means for repeatedly calculating the second check value from the information representing the change in the first check value obtained by the creation means, the second check value obtained by the second check value calculation means, and the previous check value Data error determination means for determining a data error by comparing the second check value.
(実施形態1)
本発明の実施形態1を説明する。図1は本発明の実施形態1に係る情報処理システムの構成図であり、図1(a)はハードウエア構成図、図1(b)は機能構成図である。本発明の実施形態1の情報処理システムは、中央処理装置1、主記憶装置2、情報伝送路3より構成される。主記憶装置2には監視対象領域21、エラー検出プログラム22が含まれる。そして、中央処理装置1においてエラー検出プログラムが演算実行されることにより、図1(b)に示す第一チェック値算出手段11、変化情報作成手段12、第二チェック値算出手段13、データエラー判定手段14の各種機能が実現される。
(Embodiment 1)
第一チェック値算出手段11は、主記憶装置2の中の監視対象領域21にあるデータの整合性を確認するための第一チェック値を算出するものである。変化情報作成手段12は、第一チェック値を算出している途中で主記憶装置2の中の監視対象領域21にあるデータを書き換える場合に、その書き換えによる第一チェック値の変化を表す情報を作成するものである。
The first check
また、第二チェック値算出手段13は、第一チェック値の算出が完了したときに第一チェック値及び変化情報作成手段12により得られる第一チェック値の変化を表す情報から第二チェック値を繰り返し算出するものである。データエラー判定手段14は、第二チェック値算出手段13で得られた第二チェック値と、それ以前に得られた第二チェック値とを比較することにより、データエラーを判定するものである。
Further, the second check value calculation means 13 obtains the second check value from the first check value and the information indicating the change in the first check value obtained by the change information creation means 12 when the calculation of the first check value is completed. It is calculated repeatedly. The data
すなわち、中央処理装置1は、エラー検出プログラム22によってデータエラー検出処理を行い、監視対象領域21で発生するデータエラーを検出する。中央処理装置1と主記憶装置2との間の情報のやり取りは情報伝送路3を介して行われる。図2は実施形態1のエラー検出プログラム22を実行処理して実現されるデータエラー検出処理内容を示すフローチャートである。
That is, the
第一チェック値算出手段11は、図2のステップS101、ステップS102、ステップS106、ステップS107の処理を行う。変化情報作成手段12、図2のステップS103、ステップS104、ステップS105の処理を行う。第二チェック値算出手段13は、図2のステップS108、ステップS109、ステップS110の処理を行う。
The first check value calculation means 11 performs the processes of Step S101, Step S102, Step S106, and Step S107 in FIG. The change
ただし、ステップS110ではv−fの算出のみを行う。データエラー判定手段14は、図2のステップS110、ステップS111の処理を行う。ただし、ステップS110についてはステップS110により算出されたv−fの計算結果と第二チェック値cとの比較処理を行う。
However, in step S110, only v−f is calculated. The data
まず、ステップS101では、第一チェック値v、前方変化値f、後方変化値rを0で初期化し、チェック値計算済みアドレスkをk0−1で初期化する。ここで、v、f、rは情報処理システム上ではビット列を保持する変数である。初期化に使用する0という値は、状態が0のビット列を表す。v、f、rの各変数のビット長は等しいものとする。また、チェック値計算済みアドレスkは初期値として監視対象領域21の先頭アドレスk0の一つ前のアドレスk0−1をとる。
First, in step S101, the first check value v, the forward change value f, and the backward change value r are initialized with 0, and the check value calculated address k is initialized with k0-1. Here, v, f, and r are variables that hold bit strings on the information processing system. A value of 0 used for initialization represents a bit string whose state is 0. Assume that the bit lengths of the variables v, f, and r are equal. The check value calculated address k takes the address k0-1 immediately before the head address k0 of the
ステップS102では、監視対象領域21にデータを書き込むか否かを判定する。書き込む場合はステップS103に進み、そうでない場合はステップS106に進む。書き込む場合、書き込み先アドレスをa、書込む値をiとする。
In step S102, it is determined whether or not data is written to the
ステップS103では、書き込み先アドレスaがチェック値計算済みアドレスkよりも大きいか否かを判定する。aがkよりも大きい場合はステップS104に進み、そうでない場合はステップS105に進む。 In step S103, it is determined whether the write destination address a is larger than the check value calculated address k. If a is larger than k, the process proceeds to step S104, and if not, the process proceeds to step S105.
ステップS104では、前方変化値fにf+i−maの計算結果を格納する。ここで、maは主記憶装置2のアドレスaに格納されているデータを表す。また、演算子+は加算を、演算子−は減算を意味し、fが表現できる範囲を超えた場合は次に示す例を用いて丸め込むものとする。例えば、fが4bitの場合は10進数で0〜15までの値を表現できるが、f+i−maの計算結果が16以上になった場合は16割った余りをその計算結果とし、負数になった場合は正数になるまで16を加算して得られる値を計算結果とする。fに値を格納した後、maにiを書き込む。
In step S104, the calculation result of f + i−ma is stored in the forward change value f. Here, ma represents data stored at address a of the
ステップS105では、rにr+i−maの計算結果を格納する。演算子+及び−の意味はステップS104の場合と同じである。rに値を格納した後、maにiを書込む。 In step S105, the calculation result of r + i−ma is stored in r. The meanings of the operators + and − are the same as those in step S104. After storing a value in r, i is written in ma.
ステップS106ではチェック値計算済みアドレスkにk+1を格納する。k+1はkが指しているアドレスの次のアドレスを意味する。そして、第一チェック値vにv+mkの計算結果を格納する。ここで、演算子+の意味はステップS104の場合と同じである。 In step S106, k + 1 is stored in the check value calculated address k. k + 1 means the next address after the address indicated by k. Then, the calculation result of v + mk is stored in the first check value v. Here, the meaning of the operator + is the same as that in step S104.
ステップS107ではチェック値計算済みアドレスkが終端アドレスlと等しいか否かを判定する。lは監視対象領域21の終端のアドレスを表す。kとlが等しい場合はステップS108に進み、そうでない場合はステップS102に進む。ステップS108では、第二チェック値cに有効な値が格納されているか否かを判定する。
In step S107, it is determined whether the check value calculated address k is equal to the end address l. l represents the end address of the
図2に示したフローチャートの処理を実行してから初めてステップS108を実行する場合は、第二チェック値cに有効な値が格納されていないと判定し、ステップS109に進む。そうでない場合はステップS110に進む。ただし、ステップS101を実行する時点で監視対象領域21の第二チェック値がわかっている場合、つまり、監視対象領域21の各アドレスに格納されているデータを演算子+により結び付けて演算した結果がわかっている場合は、その時点でcに第二チェック値を格納しておき、S108が実行される場合には初回か否かに関わらずcに有効な値が格納されていると判定し、ステップS110に進む。ステップS109では、cにv−fを、fにf+rを、vに0を、rに0を、kにk0−1を格納する処理を順に行う。演算子+及び−の意味はステップS104の場合と同じである。
When step S108 is executed for the first time after executing the processing of the flowchart shown in FIG. 2, it is determined that a valid value is not stored in the second check value c, and the process proceeds to step S109. Otherwise, the process proceeds to step S110. However, when the second check value of the
ステップS110ではv−fとcが等しいか否かを判定する。等しい場合はステップS111に進み、そうでない場合はデータエラー発生と判定する。演算子−の意味はステップS104の場合と同じである。ステップS111では、fにf+rを、vに0を、rに0を、kにk0−1を格納する処理を順に行う。演算子+の意味はステップS104の場合と同じである。 In step S110, it is determined whether v−f and c are equal. If equal, the process proceeds to step S111. Otherwise, it is determined that a data error has occurred. The meaning of the operator − is the same as that in step S104. In step S111, f + r is stored in f, 0 is stored in v, 0 is stored in r, and k0-1 is stored in k. The meaning of the operator + is the same as in step S104.
次に、図3は図2のデータエラー検出処理を実行した場合のデータの変化の一例の説明図である。図3に示した一例は、監視対象領域21が12bit、1アドレスあたりのビット数が4bitでv、f、r、k、cのビット長が4bitの例であり、それぞれの値は0〜Fの16進数で表されている。
Next, FIG. 3 is an explanatory diagram of an example of data change when the data error detection process of FIG. 2 is executed. The example shown in FIG. 3 is an example in which the
監視対象領域21の先頭アドレスk0は1であり、終端アドレスlは3である。監視対象領域21に格納されているデータの初期値は任意でよいが、ここでは、図3の(1)に示したとおりとする。処理は(1)から(16)まで順に行われ、処理内容と監視対象領域21の内容、及びv、f、r、k、cの演算結果をその右側に示している。また、L1はチェック値計算済みラインである。
The start address k0 of the
(1)は処理開始時であり、図2のステップS101を実行する。その結果、v、f、r、kそれぞれに0が格納される。その後、処理はステップS102に進む。 (1) is at the start of processing, and step S101 in FIG. 2 is executed. As a result, 0 is stored in each of v, f, r, and k. Thereafter, the process proceeds to step S102.
(2)は監視対象領域21のデータを書き換えない場合、つまり、ステップS102においてNOと判定した場合の処理であり、S106を実行する。その結果、kには1が格納され、vには4が格納される。その後、S107を実行する。kが1、lが3であるからS107の次はS102に進む。なお、チェック値計算済みラインL1は、チェック値算出の進捗を表すもので、チェック値計算済みアドレスkが指し示すアドレスとその次のアドレスの間に引かれるラインである。
(2) is a process when data in the
(3)は監視対象領域21のデータを書き換える場合、つまり、ステップS102においてYESと判定した場合の処理であり、ステップS103を実行する。書込み先アドレスaが1、チェック値計算済みアドレスkが1であるからステップS103の次はステップS105に進む。ステップS105を実行すると、rには0+5−4=1が格納され、アドレス1の内容は5に書き換えられる。その後、ステップS102に進む。
(3) is processing when data in the
(4)は監視対象領域21のデータを書き換えない場合、つまり、ステップS102においてNOに進んだ場合の処理であり、(2)の場合と同様の処理を行う。その結果、kには2が格納され、vには0が格納される。その後、ステップS102に進む。
(4) is a process when the data in the
(5)は監視対象領域21のデータを書き換えない場合、つまり、ステップS102においてNOと判定した場合の処理であり、ステップS107までは(2)と同様の処理を行う。その結果、kには3が格納され、vには3が格納される。ステップS107では、kとlとが共に3であるため等しいと判定し、ステップS108に進む。ステップS108では、第二チェック値cに有効な第二チェック値が格納されているか否かを判定する。図3の(1)の処理を開始してからcには何も格納していないため、cに有効な第二チェック値が格納されていないと判定し、ステップS109に進む。
(5) is a process when the data of the
(6)は、ステップS109を実行した結果であり、cには3−0=3が、fには0+1=1がv、r、kには0が順に格納される。その後、ステップS102に進む。 (6) is a result of executing step S109, in which 3-0 = 3 is stored in c, 0 + 1 = 1 is stored in f, 0 is stored in order in r, and k. Thereafter, the process proceeds to step S102.
(7)は、監視対象領域21のデータを書き換えない場合、つまり、ステップS102においてNOと判定した場合の処理であり、(2)の場合と同じ処理を行う。その結果、kには1が格納され、vには5が格納される。
(7) is a process when the data in the
(8)は、監視対象領域21のデータを書き換える場合、つまり、ステップS102においてYESと判定した場合の処理であり、ステップS103を実行する。書込み先アドレスaが3、チェック値計算済みアドレスkが1であるからステップS103の次はステップS104に進む。ステップS104を実行すると、fには1+B−3=9が格納され、アドレス3の内容はBに書き換えられる。その後、ステップS102に進む。
(8) is a process when data in the
(9)は、監視対象領域21のデータを書き換えない場合、つまり、ステップS102においてNOと判定した場合の処理であり、(2)の場合と同様の処理を行う。その結果、kには2が格納され、vには1が格納される。
(9) is a process when the data of the
(10)は、監視対象領域21のデータを書き換える場合、つまり、ステップS102においてYESと判定した場合の処理であり、(3)の場合と同様の処理を行う。その結果、rには8が格納され、アドレス2の内容は4に書き換えられる。
(10) is a process when data in the
(11)は、監視対象領域21のデータを書き換えない場合、つまり、ステップS102においてNOと判定した場合の処理であり、ステップS108までは(5)と同様の処理を行う。その結果、kには3が格納され、vにはCが格納される。ステップS108では、(6)においてcに有効な第二チェック値を格納したため、有効な第二チェック値が格納されていると判定し、ステップS110に進む。ステップS110では、cとv−fを比較する。cが3、v−fが3で等しいため、ステップS111に進む。
(11) is a process when the data in the
(12)は、ステップS111を実行した結果であり、fには9+8=1が、v、r、kには0が順に格納される。その後、ステップS102に進む。 (12) is the result of executing step S111, where 9 + 8 = 1 is stored in f, and 0 is stored in order in v, r, and k. Thereafter, the process proceeds to step S102.
(13)は、監視対象領域21のデータを書き換えない場合、つまり、ステップS102においてNOと判定した場合の処理であり、(2)の場合と同様の処理を行う。その結果、kには1が格納され、vには5が格納される。
(13) is a process when the data of the
(14)は、監視対象領域21のデータにデータエラーが発生し、アドレス2の内容が0に変化したことを表す。
(14) indicates that a data error has occurred in the data in the
(15)は、監視対象領域21のデータを書き換えない場合、つまり、ステップS102においてNOと判定した場合の処理であり、(2)の場合と同様の処理を行う。その結果、kには2が格納され、vには5が格納される。
(15) is a process when the data in the
(16)は、監視対象領域21のデータを書き換えない場合、つまり、ステップS102においてNOと判定した場合の処理であり、ステップS110までは(11)と同様の処理を行う。その結果、kには3が格納され、vには0が格納される。ステップ110ではcとv−fとを比較する。cが3、v−fがFであり、値が一致しないため、ステップ110のNOに進む。つまり、データエラーが発生したと判定する。(14)においてデータエラーが発生しているため、この判定は正しいものである。
(16) is a process when the data in the
本発明の実施形態1によれば、監視対象領域21に格納されたデータを書き換えながら、データエラー検出を行うことができる。データの冗長化を行う必要がないため、監視対象領域21全体に任意の情報を格納することができる。また、特別なハードウェアは不要であり、主記憶装置2と中央演算装置1とを備える情報処理システムにおいて、ソフトウェアによる主記憶装置2のデータエラー検出が可能である。
According to the first embodiment of the present invention, data error detection can be performed while rewriting data stored in the
(実施形態2)
本発明の実施形態2を説明する。図4は本発明の実施形態2に係る情報処理システムの構成図である。この実施形態2は、図1に示した実施形態1に対し、主記憶装置2には、監視対象領域21−1、21−2、エラー検出プログラム22−1、22−2を設けたものである。
(Embodiment 2)
A second embodiment of the present invention will be described. FIG. 4 is a configuration diagram of an information processing system according to the second embodiment of the present invention. The second embodiment is different from the first embodiment shown in FIG. 1 in that the
中央処理装置1は、エラー検出プログラム22−1、22−2によって監視対象領域21−1、21−2で発生するデータエラーを検出する。中央処理装置1と主記憶装置2との間の情報のやり取りは情報伝送路3を介して行われる。エラー検出プログラム22−1は監視対象領域21−1のデータエラー検出処理を行う。また、エラー検出プログラム22−2は監視対象領域21−2のデータエラー検出処理を行う。この場合、エラー検出プログラム22−1、22−2は、それぞれ独立してデータエラー検出処理を行う。
The
図5は、図2に示したフローチャートにおいてチェック値算出のために使用した演算を一般化したものである。実施形態2において、データエラー検出処理において行う処理は図2に示したものでも良いし、図5に示したものでも良い。以下の説明では、図2に示したフローチャートにおいてチェック値算出のために使用した演算を一般化した図5のフローチャートについて説明する。 FIG. 5 is a generalization of the calculation used for calculating the check value in the flowchart shown in FIG. In the second embodiment, the process performed in the data error detection process may be the one shown in FIG. 2 or the one shown in FIG. In the following description, the flowchart of FIG. 5 will be described in which the calculation used for calculating the check value in the flowchart shown in FIG. 2 is generalized.
図5において、ステップS201では、第一チェック値v、前方変化値f、後方変化値r、チェック値計算済みアドレスkをそれぞれv0、f0、e、k0−1で初期化する。ここで、v0、f0は、v、fが保持可能な任意のビット列を表す。v、f、rが保持可能なビット列のビット長は等しいものとする。また、図5では演算子「・」を用いているが、これはv、f、rが保持可能な任意のビット列x1、x2、x3に対して以下の(1)〜(5)の関係を満たす二項演算を表す。 In FIG. 5, in step S201, the first check value v, the forward change value f, the backward change value r, and the check value calculated address k are initialized with v0, f0, e, and k0-1, respectively. Here, v0 and f0 represent arbitrary bit strings that v and f can hold. The bit lengths of the bit strings that can be held by v, f, and r are assumed to be equal. In FIG. 5, the operator “·” is used, which has the following relationships (1) to (5) with respect to arbitrary bit strings x1, x2, and x3 that can hold v, f, and r. Represents a binary operation that satisfies.
(1)x1・x2の演算結果はv、f、rが保持可能なビット列になる。
(2)x1・(x2・x3)=(x1・x2)・x3が成り立つ。
(3)x1・e=x1となるビット列eが存在する(以降、これを単位元と呼ぶ)。
(4)x1に対してx1・x1−1=eとなるビット列x1−1が存在する(以降、これをx1に対する逆元と呼ぶ)。
(5)x1・x2=x2・x1が成り立つ。
(1) The operation result of x1 · x2 is a bit string that can hold v, f, and r.
(2) x1 · (x2 · x3) = (x1 · x2) · x3 holds.
(3) There is a bit string e that satisfies x1 · e = x1 (hereinafter referred to as a unit element).
(4) There is a bit string x1 −1 such that x1 · x1 −1 = e with respect to x1 (hereinafter referred to as an inverse element for x1).
(5) x1 · x2 = x2 · x1 holds.
例えば、前述した加算「+」を演算子「・」に対応させれば上記条件を満たす。この場合、単位元eは状態が0のビット列であり、減算x1−x2は、x1・x2−1が対応する。このほか、排他的論理和や、減算(一定の範囲を超えた場合は加算「+」の場合と同じように丸め込む)といった演算を演算子「・」に対応させることができる。rに格納するビット列eは上記(3)のeである。監視対象領域21の先頭アドレスはk0とし、k0−1はk0の一つ前のアドレスを指すものとする。
For example, the above condition is satisfied if the above-described addition “+” corresponds to the operator “•”. In this case, the identity e is a bit sequence of states is 0, subtraction x1-x2 is, x1 · x2 -1 correspond. In addition, operations such as exclusive OR and subtraction (when exceeding a certain range, rounding as in the case of addition “+”) can be made to correspond to the operator “·”. The bit string e stored in r is e in (3) above. The start address of the
ステップS202では、監視対象領域21にデータを書込むか否かを判定する。書き込む場合はステップS203に進み、そうでない場合はステップS206に進む。書き込む場合、書き込み先アドレスをa、書込む値をiとする。なお、a、iはビット列で表される情報である。
In step S202, it is determined whether or not data is written to the
ステップS203では、書き込み先アドレスaがチェック値計算済みアドレスkよりも大きいか否かを判定する。aがkよりも大きい場合はステップS204に進み、そうでない場合はステップS205に進む。 In step S203, it is determined whether the write destination address a is larger than the check value calculated address k. If a is larger than k, the process proceeds to step S204, and if not, the process proceeds to step S205.
ステップS204では、前方変化値fにf・i・ma−1の計算結果を格納する。ここで、maはアドレスaに格納されているデータを表し、ma−1はmaの逆元を表す。fに値を格納した後、maにiを書込む。 In step S204, the calculation result of f · i · ma −1 is stored in the forward change value f. Here, ma represents the data stored at address a, and ma −1 represents the inverse element of ma. After storing a value in f, i is written in ma.
ステップS205では、rにr・i・ma−1の計算結果を格納する。rに値を格納した後、maにiを書込む。 In step S205, the calculation result of r · i · ma −1 is stored in r. After storing a value in r, i is written in ma.
ステップS206ではチェック値計算済みアドレスkにk+1の計算結果を格納する。ここで、k+1はkの次のアドレスを表す。そして、第一チェック値vにv・mkの計算結果を格納する。 In step S206, the calculation result of k + 1 is stored in the check value calculated address k. Here, k + 1 represents the next address of k. Then, the calculation result of v · mk is stored in the first check value v.
ステップS207ではチェック値計算済みアドレスkが終端アドレスlと等しいか否かを判定する。等しい場合はステップS208に進み、そうでない場合はステップS202に進む。ここで、lは監視対象領域21の終端のアドレスを表す。
In step S207, it is determined whether the check value calculated address k is equal to the end address l. If they are equal, the process proceeds to step S208; otherwise, the process proceeds to step S202. Here, l represents the end address of the
ステップS208では、第二チェック値cに有効な値が格納されているか否かを判定する。図5に示したフローチャートの処理を実行してから初めてステップS208を実行する場合は、cに有効な値が格納されていないと判定し、ステップS209に進む。そうでない場合はステップS210に進む。ただし、ステップS201を実行する時点で監視対象領域21の第二チェック値がわかっている場合、つまり、監視対象領域21の各アドレスに格納されているデータを演算子「・」により結び付けて演算した結果がわかっている場合は、その時点でcに第二チェック値を格納しておき、S208が実行される場合には初回か否かに関わらずcに有効な値が格納されていると判定し、ステップS210に進む。
In step S208, it is determined whether a valid value is stored in the second check value c. When step S208 is executed for the first time after the processing of the flowchart shown in FIG. 5 is executed, it is determined that a valid value is not stored in c, and the process proceeds to step S209. Otherwise, the process proceeds to step S210. However, when the second check value of the
ステップS209では、cにv・f−1を、fにf・rを、vにv0を、rにeを、kにk0−1を格納する処理を順に行う。ここで、f−1はfの逆元を表す。 In step S209, v · f −1 is stored in c, f · r is stored in f, v0 is stored in v, e is stored in r, and k0-1 is stored in k. Here, f −1 represents the inverse element of f.
ステップS210ではv・f−1とcが等しいか否かを判定する。等しい場合はステップS211に進み、そうでない場合はデータエラー発生と判定する。 In step S210, it is determined whether v · f −1 and c are equal. If they are equal, the process proceeds to step S211, and if not, it is determined that a data error has occurred.
ステップS211では、fにf・rを、vにv0を、rにeを、kにk0−1を格納する処理を順に行う。 In step S211, processing is sequentially performed in which f · r is stored in f, v0 is stored in v, e is stored in r, and k0-1 is stored in k.
データエラー検出プログラム22−1、22−2がそれぞれ独立して図5の処理を行うことにより、データエラー検出プログラム22−1、22−2はそれぞれ監視対象領域21−1、21−2のデータエラー検出処理を行うことができる。 When the data error detection programs 22-1 and 22-2 perform the processing of FIG. 5 independently, the data error detection programs 22-1 and 22-2 are respectively the data in the monitoring target areas 21-1 and 21-2. Error detection processing can be performed.
本発明の実施形態2では、主記憶装置2内に複数の監視対象領域21を設け、それぞれに対してデータエラー検出プログラム22を動作させることにより、各監視対象領域21に対するデータエラーチェックを行うことができる。この場合、データエラー検出は監視対象領域21単位に行われる。そのため、例えば一つの監視対象領域21に一つのアプリケーションを格納している場合で、かつ、データエラーが発生した場合にアプリケーションを再起動するようにしている場合、データエラー発生時に停止させるアプリケーションは、データエラーが発生した監視対象領域21で動作しているアプリケーションのみで済ませることができる。また、図5において示したチェック値算出方法以外にも様々なビット演算を用いてチェック値を算出することができる。
In
(実施形態3)
本発明の実施形態3を説明する。図6は本発明の実施形態3に係る情報処理システムの構成図である。この実施形態3は、図1に示した実施形態1に対し、主記憶装置2にエラー検出プログラム22を格納し、補助記憶装置4の監視対象領域41を監視対象領域としたものである。
(Embodiment 3)
図6において、中央処理装置1、主記憶装置2、情報伝送路3、補助記憶装置4より構成される。主記憶装置2にはエラー検出プログラム22が含まれる。補助記憶装置4には監視対象領域41が含まれる。主記憶装置2及び補助記憶装置4は、ともに情報記憶装置である。
In FIG. 6, a
中央処理装置1は、エラー検出プログラム22によって補助記憶装置4のデータエラー検出処理を行い、監視対象領域41で発生するデータエラーを検出する。中央処理装置1、主記憶装置2、補助記憶装置4の間の情報のやり取りは情報伝送路3を介して行われる。エラー検出プログラム22は、図5に示したフローチャートに従って処理を行うものとする。
The
図5において、ステップS201では、第一チェック値v、前方変化値f、後方変化値r、チェック値計算済みアドレスkをそれぞれv0、f0、e、k0−1で初期化する。ここで、v0、f0は、それぞれf、rが保持可能な任意のビット列を表す。また、eは演算子「・」に対する単位元である。演算子「・」の意味は実施形態2の場合と同じである。また、ステップS201では監視対象領域41のデータを主記憶装置2に格納する。ここで、主記憶装置2に格納した監視対象領域41のデータの主記憶装置2上での先頭アドレスをk0とする。k0−1はk0の一つ前のアドレスを指すものとする。
In FIG. 5, in step S201, the first check value v, the forward change value f, the backward change value r, and the check value calculated address k are initialized with v0, f0, e, and k0-1, respectively. Here, v0 and f0 represent arbitrary bit strings that can hold f and r, respectively. Further, e is a unit element for the operator “·”. The meaning of the operator “·” is the same as in the second embodiment. In step S201, the data of the
ステップS202では、監視対象領域41にデータを書き込むか否かを判定する。書き込む場合はステップS203に進み、そうでない場合はステップS206に進む。書き込む場合、監視対象領域41のデータと主記憶装置2に格納した監視対象領域41のデータのアドレスを対応させ、監視対象領域41の書き込み先に対応する主記憶装置2上でのアドレスをaとする。また、書込む値をiとする。
In step S202, it is determined whether or not data is written to the
ステップS203では、書き込み先アドレスaがチェック値計算済みアドレスkよりも大きいか否かを判定する。aがkよりも大きい場合はステップS204に進み、そうでない場合はステップS205に進む。 In step S203, it is determined whether the write destination address a is larger than the check value calculated address k. If a is larger than k, the process proceeds to step S204, and if not, the process proceeds to step S205.
ステップS204では、前方変化値fにf・i・ma−1の計算結果を格納する。ここで、maは主記憶装置2のアドレスaに格納されているデータを表し、ma−1はmaの逆元を表す。fに値を格納した後、maにiを書込む。その後、監視対象領域41のアドレスaに対応する場所にiを書込む。
In step S204, the calculation result of f · i · ma −1 is stored in the forward change value f. Here, ma represents data stored at address a of the
ステップS205では、rにr・i・ma−1の計算結果を格納する。rに値を格納した後、maにiを書込む。その後、監視対象領域41のアドレスaに対応する場所にiを書込む。
In step S205, the calculation result of r · i · ma −1 is stored in r. After storing a value in r, i is written in ma. Thereafter, i is written in a location corresponding to the address a in the
ステップS206ではチェック値計算済みアドレスkにk+1を格納する。ここで、k+1はkの次のアドレスを表す。そして、第一チェック値vにv・mkの計算結果を格納する。 In step S206, k + 1 is stored in the check value calculated address k. Here, k + 1 represents the next address of k. Then, the calculation result of v · mk is stored in the first check value v.
ステップS207ではチェック値計算済みアドレスkが終端アドレスlと等しいか否かを判定する。ここで、lは主記憶装置2に格納した監視対象領域41のデータの終端のアドレスを表す。等しい場合はステップS208に進み、そうでない場合はステップS202に進む。
In step S207, it is determined whether the check value calculated address k is equal to the end address l. Here, l represents the end address of the data in the
ステップS208では、第二チェック値cに有効な値が格納されているか否かを判定する。図5に示したフローチャートの処理を実行してから初めてステップS208を実行する場合は、cに有効な値が格納されていないと判定し、ステップS209に進む。そうでない場合はステップS210に進む。ただし、ステップS201を実行する時点で監視対象領域41の第二チェック値がわかっている場合、つまり、監視対象領域41のデータを主記憶装置2に格納した場合の各アドレスに格納されているデータを演算子・により結び付けて演算した結果がわかっている場合は、その時点でcに第二チェック値を格納しておき、S208が実行される場合には初回か否かに関わらずcに有効な値が格納されていると判定し、ステップS210に進む。
In step S208, it is determined whether a valid value is stored in the second check value c. When step S208 is executed for the first time after the processing of the flowchart shown in FIG. 5 is executed, it is determined that a valid value is not stored in c, and the process proceeds to step S209. Otherwise, the process proceeds to step S210. However, when the second check value of the
ステップS209では、cにv・f−1を、fにf・rを、vにv0を、rにeを、kにk0−1を格納する処理を順に行う。ここで、f−1はfの逆元を表す。 In step S209, v · f −1 is stored in c, f · r is stored in f, v0 is stored in v, e is stored in r, and k0-1 is stored in k. Here, f −1 represents the inverse element of f.
ステップS210ではv・f−1とcが等しいか否かを判定する。等しい場合はステップS211に進み、そうでない場合はデータエラー発生と判定する。 In step S210, it is determined whether v · f −1 and c are equal. If they are equal, the process proceeds to step S211, and if not, it is determined that a data error has occurred.
ステップS211では、fにf・rを、vにv0を、rにeを、kにk0−1を格納する処理を順に行う。 In step S211, processing is sequentially performed in which f · r is stored in f, v0 is stored in v, e is stored in r, and k0-1 is stored in k.
なお、補助記憶装置4の中に複数の監視対象領域41を設けても良い。その場合、監視対象領域41のそれぞれに対してエラー検出プログラム22を主記憶装置2の中に格納し、各エラー検出プログラム22はそれぞれ図5に示した処理を独立して行うようにする。これにより、各監視対象領域41に対するデータエラーチェックを行うことができる。
A plurality of
本発明の実施形態3では、主記憶装置2だけでなく、補助記憶装置4に対しても、データを書き換えながらデータエラー検出を行うことができる。この場合もデータの冗長化及び特別なハードウェアは不要である。
In
(実施形態4)
本発明の実施形態4を説明する。図7は本発明の実施形態4に係る情報処理システムの構成図である。この実施形態4は、図1に示した実施形態1に対し、記憶媒体6にエラー検出プログラム62を格納し、主記憶装置2の監視対象領域21、補助記憶装置4の監視対象領域41、記憶媒体6の監視対象領域61を監視対象領域としたものである。主記憶装置2、補助記憶装置4、記録媒体6は、ともに情報記憶装置である。
(Embodiment 4)
図7において、中央処理装置1、主記憶装置2、情報伝送路3、補助記憶装置4、I/O装置5、記憶媒体6より構成される。記憶媒体6はI/O装置5を介して中央処理装置1に接続されている。主記憶装置2には監視対象領域21が含まれる。補助記憶装置4には監視対象領域41が含まれる。記憶媒体6には監視対象領域61、エラー検出プログラム62が含まれる。
In FIG. 7, a
図8は記憶媒体6に含まれるエラー検出プログラム62の構成図である。エラー検出プログラム62は、第一チェック値算出プログラムコードP1、変化情報作成プログラムコードP2、第二チェック値算出プログラムコードP3、データエラー判定プログラムコードP4より構成される。
FIG. 8 is a configuration diagram of the
中央処理装置1、主記憶装置2、補助記憶装置4、I/O装置5は、情報伝送路3を介して情報をやり取りする。I/O装置5は記憶媒体6と情報のやり取りを行い、記憶媒体6に格納された情報の読み込み/書き込みを行う。
The
主記憶装置2は記憶媒体6に格納されたエラー検出プログラム62を読み込み、エラー検出プログラム62を動作させる。このエラー検出プログラム62がデータエラー検出の対象とするデータは、主記憶装置2の監視対象領域21に格納されたデータでも良いし、補助記憶装置4の監視対象領域41に格納されたデータでも良いし、記憶媒体6の監視対象領域61に格納されたデータでも良い。なお、図7に示した監視対象領域21、41、61はいずれか一つ以上あればよく、例えば、主記憶装置2に読み込まれたエラー検出プログラム62が監視対象領域41に格納されたデータを対象としてデータエラー検出処理を行う場合、監視対象領域21及び監視対象領域61は設けなくて良い。
The
エラー検出プログラム62が主記憶装置2の監視対象領域21に格納されたデータを対象としてデータエラー検出処理を行う場合は実施形態2で述べた処理を行う。
When the
エラー検出プログラム62が補助記憶装置4の監視対象領域41に格納されたデータを対象としてデータエラー検出処理を行う場合は実施形態3で述べた処理を行う。
When the
エラー検出プログラム62が記憶媒体6の監視対象領域61に格納されたデータを対象としてデータエラー検出処理を行う場合は、図5に示した処理を行う。具体的には、実施形態3で述べた図5の処理において、補助記憶装置4を記録媒体6に、監視対象領域41を監視対象領域61に置き換えた処理を行う。
When the
エラー検出プログラム62は、図8に示したプログラム構成となっている。第一チェック値算出プログラムコードP1は、図5のステップS201、ステップS202、ステップS206、ステップS207の処理を行う。変化情報作成プログラムコードP2は、図5のステップS203、ステップS204、ステップS205の処理を行う。第二チェック値算出プログラムコードP3は、図5のステップS208、ステップS209、ステップS210の処理を行う。ただし、ステップS210についてはv・f−1の算出のみ行う。
The
データエラー判定プログラムコードP4は、図5のステップS210、ステップS211の処理を行う。ただし、ステップS210については第二チェック値算出プログラムコードP3により算出されたv・f−1の計算結果と第二チェック値cとの比較処理を行う。 The data error determination program code P4 performs the processing of step S210 and step S211 in FIG. However, in step S210, a comparison process between the calculation result of v · f −1 calculated by the second check value calculation program code P3 and the second check value c is performed.
こうしてエラー検出プログラム62は、監視対象領域21、41、61のいずれかに格納されたデータのデータエラー検出処理を行う。
In this way, the
本発明の実施形態4では、記憶媒体6に格納されたエラー検出プログラム62を用いて、図7に示した情報処理システム上でデータエラー検出処理を実行することができる。また、主記憶装置2や補助記憶装置4だけでなく、記憶媒体6に対しても、データを書き換えながらデータエラー検出を行うことができる。この場合もデータの冗長化や特別なハードウェアは不要である。
In the fourth embodiment of the present invention, the data error detection process can be executed on the information processing system shown in FIG. 7 using the
従って、データの冗長化を行わず、かつ、データの整合性をチェックしている間にデータを書き換えることを許容するようなデータの整合性チェック方法が存在すれば、単位情報を保存するのに要するハードウェアコストを高めることなくデータの整合性をチェックすることができることになる。 Therefore, if there is a data consistency check method that does not perform data redundancy and allows data to be rewritten while checking data consistency, unit information can be stored. Data consistency can be checked without increasing the required hardware cost.
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。 Although several embodiments of the present invention have been described, these embodiments are presented by way of example and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the scope of the invention. These embodiments and modifications thereof are included in the scope and gist of the invention, and are included in the invention described in the claims and the equivalents thereof.
1:中央処理装置、2:主記憶装置、3:情報伝送路、4:補助記憶装置、5:I/O装置、6:記憶媒体、11:第一チェック値算出手段、12:変化情報作成手段、13:第二チェック値算出手段、14:データエラー判定手段、21:監視対象領域、22:エラー検出プログラム、41:監視対象領域、61:監視対象領域、62:エラー検出プログラム、L1:チェック値計算済みライン、P1:第一チェック値算出プログラムコード、P2:変化情報作成プログラムコード、P3:第二チェック値算出プログラムコード、P4:データエラー判定プログラムコード 1: central processing unit, 2: main storage unit, 3: information transmission path, 4: auxiliary storage unit, 5: I / O unit, 6: storage medium, 11: first check value calculation means, 12: change information creation Means: 13: second check value calculation means, 14: data error determination means, 21: monitoring target area, 22: error detection program, 41: monitoring target area, 61: monitoring target area, 62: error detection program, L1: Check value calculated line, P1: first check value calculation program code, P2: change information creation program code, P3: second check value calculation program code, P4: data error determination program code
Claims (7)
前記エラー検出プログラムを演算実行する中央処理装置とを備えた情報処理システムにおいて、
前記情報記憶装置の中の監視対象領域にあるデータの整合性を確認するための第一チェック値を算出する第一チェック値算出手段と、
第一チェック値を算出している途中で監視対象領域にあるデータを書き換える場合にその書き換えによる第一チェック値の変化を表す情報を作成する変化情報作成手段と、
第一チェック値の算出が完了したときに第一チェック値及び前記変化情報作成手段により得られる第一チェック値の変化を表す情報から第二チェック値を繰り返し算出する第二チェック値算出手段と、
前記第二チェック値算出手段で得られた第二チェック値とそれ以前に得られた第二チェック値とを比較することによりデータエラーを判定するデータエラー判定手段とを備えることを特徴とする情報処理システム。 An information storage device storing an error detection program and data;
In an information processing system comprising a central processing unit that performs calculation and execution of the error detection program,
First check value calculation means for calculating a first check value for confirming the consistency of data in the monitoring target area in the information storage device;
A change information creating means for creating information indicating a change in the first check value due to the rewriting when rewriting the data in the monitoring target area in the middle of calculating the first check value;
Second check value calculation means for repeatedly calculating the second check value from the first check value and information representing the change in the first check value obtained by the change information creation means when the calculation of the first check value is completed;
Data error determination means for determining a data error by comparing the second check value obtained by the second check value calculation means and the second check value obtained before that Processing system.
前記情報記憶装置の中の監視対象領域にあるデータの整合性を確認するための第一チェック値を算出する第一チェック値算出ステップと、
第一チェック値を算出している途中で監視対象領域にあるデータを書き換える場合にその書き換えによる第一チェック値の変化を表す情報を作成する変化情報作成ステップと、
第一チェック値の算出が完了したときに第一チェック値及び前記変化情報作成ステップにより得られる第一チェック値の変化を表す情報から第二チェック値を繰り返し算出する第二チェック値算出ステップと、
前記第二チェック値算出ステップで得られた第二チェック値とそれ以前に得られた第二チェック値とを比較することによりデータエラーを判定するデータエラー判定ステップとを備えることを特徴とするデータエラー検出方法。 In a data error detection method for detecting a data error of an information processing system comprising an information storage device storing an error detection program and data, and a central processing unit for calculating and executing the error detection program,
A first check value calculating step for calculating a first check value for confirming the consistency of data in the monitoring target area in the information storage device;
A change information creation step for creating information indicating a change in the first check value due to the rewriting when rewriting the data in the monitoring target area in the middle of calculating the first check value;
A second check value calculation step for repeatedly calculating a second check value from information representing a change in the first check value obtained by the first check value and the change information creation step when the calculation of the first check value is completed;
A data error determination step of determining a data error by comparing the second check value obtained in the second check value calculation step with the second check value obtained before that Error detection method.
前記情報記憶装置の中の監視対象領域にあるデータの整合性を確認するための第一チェック値を算出する第一チェック値算出手段と、
第一チェック値を算出している途中で監視対象領域にあるデータを書き換える場合にその書き換えによる第一チェック値の変化を表す情報を作成する変化情報作成手段と、
第一チェック値の算出が完了したときに第一チェック値及び前記変化情報作成手段により得られる第一チェック値の変化を表す情報から第二チェック値を繰り返し算出する第二チェック値算出手段と、
前記第二チェック値算出手段で得られた第二チェック値とそれ以前に得られた第二チェック値とを比較することによりデータエラーを判定するデータエラー判定手段として機能させるためのプログラム。 In a computer for functioning as an information processing system, comprising an information storage device storing an error detection program and data, and a central processing unit for calculating and executing the error detection program
First check value calculation means for calculating a first check value for confirming the consistency of data in the monitoring target area in the information storage device;
A change information creating means for creating information indicating a change in the first check value due to the rewriting when rewriting the data in the monitoring target area in the middle of calculating the first check value;
Second check value calculation means for repeatedly calculating the second check value from the first check value and information representing the change in the first check value obtained by the change information creation means when the calculation of the first check value is completed;
A program for functioning as a data error determination unit that determines a data error by comparing a second check value obtained by the second check value calculation unit with a second check value obtained before that.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011200337A JP5793379B2 (en) | 2011-09-14 | 2011-09-14 | Information processing system, data error detection method, program, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011200337A JP5793379B2 (en) | 2011-09-14 | 2011-09-14 | Information processing system, data error detection method, program, and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013061842A JP2013061842A (en) | 2013-04-04 |
JP5793379B2 true JP5793379B2 (en) | 2015-10-14 |
Family
ID=48186455
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011200337A Expired - Fee Related JP5793379B2 (en) | 2011-09-14 | 2011-09-14 | Information processing system, data error detection method, program, and storage medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5793379B2 (en) |
-
2011
- 2011-09-14 JP JP2011200337A patent/JP5793379B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013061842A (en) | 2013-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5658128B2 (en) | System, method, and computer program for probabilistic multilayer error correction in NAND flash memory | |
JP5780174B2 (en) | System and method for handling bad bit errors | |
US11093331B2 (en) | Method, device and computer program product for detecting incomplete write of data | |
CN110442473B (en) | Nonvolatile data storage method and device, electronic equipment and medium | |
US9575692B2 (en) | Cache control device having fault-tolerant function and method of operating the same | |
US9766975B2 (en) | Partial ECC handling for a byte-write capable register | |
US20180157428A1 (en) | Data protection of flash storage devices during power loss | |
US10831401B2 (en) | Method, device and computer program product for writing data | |
US20170063401A1 (en) | Partial ecc mechanism for a byte-write capable register | |
KR20100104454A (en) | Error correcting device, method for error correction thereof and memory device and data processing system including of the same | |
US20170060677A1 (en) | Generating ecc values for byte-write capable registers | |
CN106802837B (en) | Method and device for updating error detection and correcting ECC code | |
JP5695112B2 (en) | Data storage device, data storage method, and in-vehicle control device | |
JP6009290B2 (en) | Electronic control device for vehicle | |
US8533560B2 (en) | Controller, data storage device and program product | |
US9182943B2 (en) | Methods and devices for prime number generation | |
JP5793379B2 (en) | Information processing system, data error detection method, program, and storage medium | |
JP6304007B2 (en) | Microcontroller | |
US10120614B2 (en) | Storage device, storage system, and method of controlling storage device | |
CN111131051A (en) | Route issuing method and device | |
JP6054753B2 (en) | Semiconductor device and data access method | |
JP2007257628A (en) | Method for error correction and error detection for reading out stored information data and storage control unit therefor | |
JP2011054221A (en) | Storage device and electronic device | |
JP6092673B2 (en) | Memory control device and memory control method | |
US9519539B2 (en) | Monitoring data error status in a memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140710 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150605 |
|
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: 20150714 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150810 |
|
LAPS | Cancellation because of no payment of annual fees |