JP2008192053A - Data recovery system for nonvolatile semiconductor memory - Google Patents
Data recovery system for nonvolatile semiconductor memory Download PDFInfo
- Publication number
- JP2008192053A JP2008192053A JP2007028169A JP2007028169A JP2008192053A JP 2008192053 A JP2008192053 A JP 2008192053A JP 2007028169 A JP2007028169 A JP 2007028169A JP 2007028169 A JP2007028169 A JP 2007028169A JP 2008192053 A JP2008192053 A JP 2008192053A
- Authority
- JP
- Japan
- Prior art keywords
- data
- semiconductor memory
- nonvolatile semiconductor
- recovery system
- stored
- 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.)
- Withdrawn
Links
Images
Abstract
Description
本発明は、Read Disturb現象等、不揮発性半導体メモリに記憶されたデータが変化するエラーに基づくトラブルを回避する技術に関し、なかでも自装置の修復能力を超えるトラブルが発生した場合に好適なデータ修復システムに関する。 The present invention relates to a technique for avoiding troubles based on errors in which data stored in a non-volatile semiconductor memory changes, such as a Read Disturb phenomenon, and particularly suitable for data restoration when troubles exceeding the repair capability of the device itself occur. About the system.
不揮発性メモリの中でも、NANDフラッシュメモリは、単純な回路構成による高集積化や製造コスト減、ユーザによる書き込みの容易化を図ることを可能とするため、SDメモリカードなどに大量に採用されている。 Among non-volatile memories, NAND flash memories are used in large quantities in SD memory cards and the like in order to enable high integration, simple manufacturing cost reduction, and easy writing by users. .
最近では、NANDフラッシュメモリは、ゲーム機などにも採用されている。NANDフラッシュメモリがゲーム機などで使用される際には、書き込みは発生せず、連続的な読み出しが発生する。すなわち、NANDフラッシュメモリがROMとして採用されることが多くなりつつある。 Recently, NAND flash memory has been adopted in game machines and the like. When the NAND flash memory is used in a game machine or the like, writing does not occur and continuous reading occurs. That is, a NAND flash memory is increasingly used as a ROM.
しかし、ゲーム機などでは、特定のプログラムが繰り返し読み出されることが多いため、プログラムが意図せず書き換えられる可能性が指摘され始めている。このような現象は“Read Disturb”現象と呼ばれており、本現象が発生するメカニズムについて、以下に簡単に説明する。 However, in game machines and the like, since a specific program is often read repeatedly, it has begun to be pointed out that the program may be rewritten unintentionally. Such a phenomenon is called a “Read Disturb” phenomenon, and a mechanism in which this phenomenon occurs will be briefly described below.
図8は、NANDフラッシュメモリの模式図である。NANDフラッシュメモリは、格子状に配線されたビット線41とワード線42、43、44、メモリセル52、53、選択トランジスタ54などから構成されている。
FIG. 8 is a schematic diagram of a NAND flash memory. The NAND flash memory includes
メモリセル52が格納する二値データ(“0”または“1”)を読み出す場合を考える。この場合、メモリセル52は選択セル52、メモリセル53は非選択セル53と呼ばれている。まず、選択トランジスタ54により、選択セル52が属するビット線41が指定される。次に、選択セル52が属するワード線42に対して、低ゲート電圧V(Low)=0Vが印加される。そして、非選択セル53が属するワード線43に対して、高ゲート電圧V(High)〜5Vが印加される。このとき、非選択セル53は微弱な書き込み状態にあるため、非選択セル53のフローティングゲートに、電子がトラップされ、蓄積される。すなわち、選択セル52が格納する二値データが繰り返し読み出されると、非選択セル53の閾値電圧がシフトして、非選択セル53が格納している二値データが、“1”から“0”に意図せず書き換えられる可能性がある。
Consider a case where binary data (“0” or “1”) stored in the
もっとも、非選択セル53が格納している二値データが意図せず書き換えられたとしても、データが新たに書き込まれる前に一括して消去される際に、非選択セル53の機能を回復させることができる。しかし、書き込みは発生せず、連続的な読み出しが発生する場合には、非選択セル53の機能を回復させることができなくなる。
However, even if the binary data stored in the non-selected
以上に説明した“Read Disturb”現象を回避する手段を提供する文献として、以下の特許文献が挙げられる。 The following patent documents can be cited as documents providing means for avoiding the “Read Disturb” phenomenon described above.
データの修復技術に関し、ECC(Error Check and Correct)等が公知である。たとえば、予めECC(Error−Correcting Code)をフラッシュメモリに組み込んでおけば、フラッシュメモリ内でエラーが発生しても、エラーをチェックして修復することができる。 Regarding data restoration technology, ECC (Error Check and Correct) and the like are known. For example, if an error correcting code (ECC) is incorporated in the flash memory in advance, even if an error occurs in the flash memory, the error can be checked and repaired.
上述のとおり“Read Disturb”現象は、データの書き込みや消去が行われずに、繰り返し同じデータが読み出されることによって発生する後発的な問題である。したがって、製品出荷時の品質検査等で事前に“Read Disturb”現象の発生を完全に予防するのは難しい。 As described above, the “Read Disturb” phenomenon is a later problem that occurs when the same data is repeatedly read without being written or erased. Therefore, it is difficult to completely prevent the occurrence of the “Read Disturb” phenomenon in advance in quality inspection at the time of product shipment.
ECC等の利用によってある程度の信頼性は確保できるものの、エラー訂正能力にも限度があり、十分とはいえない。たとえば、ある方式では、ECCで64bitのデータについて8bitのECCを用意すれば、1bitのエラーを訂正することはできるが、それを超えるエラーは訂正できない。とくに“Read Disturb”現象は、選択セルの周りの非選択セルに発生するため、多数発生するおそれがあり、訂正能力を超えるリスクが高いと考えられる。 Although a certain level of reliability can be secured by using ECC or the like, there is a limit to the error correction capability, which is not sufficient. For example, in one method, if an 8-bit ECC is prepared for 64-bit data in ECC, a 1-bit error can be corrected, but an error exceeding the 1-bit error cannot be corrected. In particular, since the “Read Disturb” phenomenon occurs in non-selected cells around the selected cell, it may occur in large numbers, and the risk of exceeding the correction capability is considered high.
そこで、本発明は“Read Disturb”現象のように、フラッシュメモリに後発的にエラーが発生しても、自発的にデータの修復ができる手段を提供することを目的とする。本発明は、仮に自装置が備えるエラー訂正能力を超えるエラーが発生しても、修復可能なデータ修復システムを提供することを目的とする。 Accordingly, an object of the present invention is to provide means capable of spontaneously restoring data even if an error occurs later in the flash memory as in the “Read Disturb” phenomenon. An object of the present invention is to provide a data restoration system that can be restored even if an error exceeding the error correction capability of the device itself occurs.
上記課題を解決するため、請求項1の本発明にかかる不揮発性半導体メモリのデータ修復システムは、再書き込み可能な不揮発性半導体メモリと、前記不揮発性半導体メモリに記憶された記憶データを処理するホストシステムと、を備える情報処理装置を含み、前記記憶データが変化してエラーを発生した場合に、ネットワークを介して、前記情報処理装置の外部から前記記憶データに関する情報を取得して前記記憶データを修復する手段、を備えることを特徴とする。
In order to solve the above problems, a data recovery system for a nonvolatile semiconductor memory according to the present invention of
請求項2に記載の本発明は、請求項1に記載の不揮発性半導体メモリのデータ修復システムであって、前記記憶データと同一のデータを記憶するサーバを含み、前記情報処理装置が、前記サーバにアクセスして前記記憶データを修復することを特徴とする。
The present invention described in claim 2 is a data recovery system for a nonvolatile semiconductor memory according to
請求項3に記載の本発明は、請求項1に記載の不揮発性半導体メモリのデータ修復システムであって、前記記憶データと同一のデータを記憶する前記情報処理装置を複数含み、いずれかの情報処理装置が、他の情報処理装置にアクセスして前記記憶データを修復することを特徴とする。 According to a third aspect of the present invention, there is provided a data recovery system for a nonvolatile semiconductor memory according to the first aspect, including a plurality of the information processing devices that store the same data as the stored data, A processing apparatus accesses another information processing apparatus to restore the stored data.
請求項4に記載の本発明は、請求項1ないし請求項3のいずれかに記載の不揮発性半導体メモリのデータ修復システムであって、前記記憶データを修復する修復プログラム、を備え、アプリケーションプログラムの実行中にエラーが発生した場合に、前記修復プログラムに基づいて前記記憶データを修復することを特徴とする。 According to a fourth aspect of the present invention, there is provided a data restoration system for a nonvolatile semiconductor memory according to any one of the first to third aspects, comprising a restoration program for restoring the stored data, and an application program When an error occurs during execution, the stored data is repaired based on the repair program.
請求項5に記載の本発明は、請求項4に記載の不揮発性半導体メモリのデータ修復システムであって、前記修復プログラムが、前記不揮発性半導体メモリに、前記アプリケーションプログラムとともに記憶されていることを特徴とする。 According to a fifth aspect of the present invention, there is provided the data repair system for a nonvolatile semiconductor memory according to the fourth aspect, wherein the repair program is stored in the nonvolatile semiconductor memory together with the application program. Features.
請求項6に記載の本発明は、請求項4または請求項5に記載の不揮発性半導体メモリのデータ修復システムであって、前記ホストシステムが、前記不揮発性半導体メモリから読み出した記憶データを一時的に記憶するバッファメモリ、を備え、前記バッファメモリに前記修復プログラムを読み出して実行することを特徴とする。 According to a sixth aspect of the present invention, there is provided a data recovery system for a nonvolatile semiconductor memory according to the fourth or fifth aspect, wherein the host system temporarily stores storage data read from the nonvolatile semiconductor memory. A buffer memory for storing the program, and reading and executing the repair program in the buffer memory.
請求項7に記載の本発明は、請求項6に記載の不揮発性半導体メモリのデータ修復システムであって、前記アプリケーションプログラムの実行前に、予め前記修復プログラムを前記バッファメモリに読み出しておくことを特徴とする。 According to a seventh aspect of the present invention, there is provided the data repair system for a nonvolatile semiconductor memory according to the sixth aspect, wherein the repair program is read into the buffer memory in advance before the application program is executed. Features.
請求項8に記載の本発明は、請求項6に記載の不揮発性半導体メモリのデータ修復システムであって、前記アプリケーションプログラムの実行中のエラー発生時に、前記修復プログラムを前記バッファメモリに読み出すことを特徴とする。
The invention according to
請求項9に記載の本発明は、請求項1ないし請求項3のいずれかに記載の不揮発性半導体メモリのデータ修復システムであって、前記記憶データを修復する修復プログラム、を備え、前記修復プログラムが、前記記憶データにエラーがないか否かを調べる手段と、前記記憶データにエラーを発見した場合に、その情報を記憶する修復情報記憶手段と、所定のタイミングで、前記修復情報記憶手段に記憶された情報に基づいて前記記憶データを修復する手段と、を有することを特徴とする。 A ninth aspect of the present invention is the nonvolatile semiconductor memory data repair system according to any one of the first to third aspects, comprising a repair program for repairing the stored data, and the repair program Means for checking whether or not there is an error in the stored data, a repair information storage means for storing the information when an error is found in the stored data, and a repair information storage means at a predetermined timing. And means for restoring the stored data based on the stored information.
請求項10に記載の本発明は、請求項9に記載の不揮発性半導体メモリのデータ修復システムであって、前記情報処理装置がスリープ状態にあるときに、前記記憶データを修復することを特徴とする。 According to a tenth aspect of the present invention, there is provided a data recovery system for a nonvolatile semiconductor memory according to the ninth aspect, wherein the stored data is recovered when the information processing apparatus is in a sleep state. To do.
請求項11に記載の本発明は、請求項9に記載の不揮発性半導体メモリのデータ修復システムであって、前記情報処理装置が充電状態にあるときに、前記記憶データを修復することを特徴とする。
The present invention described in
請求項12に記載の本発明は、請求項1ないし請求項11のいずれかに記載の不揮発性半導体メモリのデータ修復システムであって、少なくともエラーが発生した記憶データと同一のデータを取得し、エラーが発生した記憶データをこれに書き換えることにより、前記記憶データの修復を行うことを特徴とする。
The present invention described in claim 12 is a data recovery system for a nonvolatile semiconductor memory according to any one of
請求項13に記載の本発明は、請求項1ないし請求項12のいずれかに記載の不揮発性半導体メモリのデータ修復システムであって、前記情報処理装置が、再書き込み可能な不揮発性半導体メモリの未使用領域と、前記未使用領域に記憶される記憶データの格納情報を管理する管理手段と、を有し、少なくともエラーを発生した前記記憶データと同一のデータを取得して、前記未使用領域に取得データとして記憶するとともに、前記管理手段によって前記取得データを前記記憶データに代替することにより、前記記憶データの修復を行うことを特徴とする。 According to a thirteenth aspect of the present invention, there is provided a data recovery system for a nonvolatile semiconductor memory according to any one of the first to twelfth aspects, wherein the information processing apparatus is a rewritable nonvolatile semiconductor memory. An unused area, and a management unit that manages storage information of storage data stored in the unused area, and acquires at least the same data as the storage data in which an error has occurred, and the unused area And storing the acquired data as the acquired data, and replacing the acquired data with the stored data by the management means.
請求項14に記載の本発明は、請求項1ないし請求項13のいずれかに記載の不揮発性半導体メモリのデータ修復システムであって、前記記憶データのエラーが、Read Disturb現象によって引き起こされたものであることを特徴とする。 A fourteenth aspect of the present invention is the nonvolatile semiconductor memory data restoration system according to any one of the first to thirteenth aspects, wherein the error of the stored data is caused by a Read Disturb phenomenon. It is characterized by being.
ネットワークを利用することにより、自装置の外部からデータを取得してデータ修復を行うので、仮にフラッシュメモリに自装置のエラー訂正能力を超えるエラーが発生しても、データ修復することができる。 By using the network, data is acquired from the outside of the own device and data restoration is performed. Therefore, even if an error exceeding the error correction capability of the own device occurs in the flash memory, the data can be restored.
図1は、本発明にかかる不揮発性半導体メモリのデータ修復システムの基本構成を示すブロック図である。図1に示すように、本発明の不揮発性半導体メモリのデータ修復システムは、ネットワーク1を介してアクセス可能なサーバ2や情報処理装置3などで構成される。たとえば、情報処理装置3aが備える不揮発性半導体メモリ5(フラッシュメモリ5)のデータに異常(エラー)が発生した場合には、情報処理装置3aとサーバ2との間、あるいは、2台の情報処理装置3a・3bとの間でデータの修復処理が実行される。
FIG. 1 is a block diagram showing the basic configuration of a nonvolatile semiconductor memory data restoration system according to the present invention. As shown in FIG. 1, the nonvolatile semiconductor memory data restoration system according to the present invention includes a server 2 and an
{ネットワーク}
ネットワーク1は、主としてインターネットが該当するが、それに限らずLAN等、独自に構築されたネットワークを含む。要は、情報処理装置3やサーバ2が、相互にアクセスしてデータ通信可能であれば足りる。
{network}
The
ネットワーク1の具体例としては、たとえば、電波を利用したワイヤレスネットワークを挙げることができる。その他にも、電力線搬送通信(Power Line Communication)を介したネットワークが利用できる。なお、電力線搬送通信とは、電力線を通信回線として利用する通信形態のことである。たとえば、サーバ2や情報処理装置3の電源ケーブル4を電力線11に接続しておけば、その情報処理装置3は、PLCモデムを経由してインターネットに接続することが可能となる。
Specific examples of the
{サーバ}
サーバ2は、少なくとも各情報処理装置3に含まれるフラッシュメモリ5に記憶された記憶データと同一のデータを記憶する手段を備える。そして、ネットワーク1を介していずれかの情報処理装置3からのアクセスを受け付け、その情報処理装置3の要求に応じて自装置が記憶するデータを送信する手段を備える。情報処理装置3が複数存在し、それぞれが異なる記憶データを記憶している場合には、サーバ2は個々の情報処理装置3が記憶する記憶データに応じて複数のデータを記憶することができ、それぞれの情報処理装置3に対して個々に対応可能である。サーバ2であれば、元となるデータの一括管理ができるため、データの維持や更新等、管理し易い利点がある。
{server}
The server 2 includes means for storing at least the same data as the storage data stored in the
{情報処理装置}
情報処理装置3は、フラッシュメモリ5やホストシステム6などを備えるとともに、有線、あるいは無線の形態でインターネット等のネットワークに接続して、サーバ2や他の情報処理装置3にアクセスする手段を備える。情報処理装置3の具体例としては、通信型のゲーム機などを挙げることができる。対戦型のゲーム機などのように、少なくとも同一のアプリケーションを有する情報処理装置3が複数存在するのが好ましい。それぞれ同一のデータを備えているため、任意の情報処理装置3間でデータの修復処理が可能となり、データ修復の際にサーバ2にアクセスが集中するのを避けることができ、通信負担を軽減できるからである。
{Information processing device}
The
{不揮発性半導体メモリ}
不揮発性半導体メモリ5は、書き換え可能な不揮発性半導体メモリであり、フラッシュメモリが該当する。フラッシュメモリには、たとえば、NOR型フラッシュメモリやNAND型フラッシュメモリがある。NAND型フラッシュメモリが好適であるが、その型までは限定はしない。なお、フラッシュメモリ5は、情報処理装置3と一体に装着されていてもよいし、ゲームカートリッジなど、外部記憶装置の形態で情報処理装置3に着脱自在に装着されていてもよい。
{Nonvolatile semiconductor memory}
The
フラッシュメモリ5には、ゲームコンテンツのアプリケーションプログラム501等、各種プログラムを構成するデータが記憶される(記憶データ)。情報処理装置3を利用するユーザは、アプリケーションプログラム501を実行することで、ゲームコンテンツを楽しむことができる。フラッシュメモリ5には、アプリケーションプログラム501等を記憶する使用領域5aに加えて、データが記憶されていない未使用領域5bを設けておくことができる。また、フラッシュメモリ5は、これに記憶されているデータの格納情報を管理するFAT(File Allocation Tables)5cを備えることができる(図4参照)。
The
{ホストシステム}
ホストシステム6は、情報処理装置3の全体制御を行う中枢処理部であり、演算部、制御部、記憶部、入出力部などで構成されている。具体的には、情報処理装置3には、CPUやROM、バッファメモリ7、バッテリ8、モニター、操作ボタンなどが備えられており、ホストシステム6によってこれらが制御されている。たとえば、ROMは、情報処理装置3の全体を制御するシステムプログラム9等の各種プログラムを格納する。バッファメモリ7は、主としてフラッシュメモリ5から読み出した記憶データを一時的に記憶する記憶部として機能する。バッテリ8は電力線11に接続する電源ケーブル4を有し、蓄電して情報処理装置3の電源として機能するだけでなく、本発明では電力線搬送通信によるデータ通信機能にも寄与する。
{Host system}
The
{データ修復処理}
次に、本システムにおけるデータ修復処理について具体的に説明する。先に説明した通り、たとえばNANDフラッシュメモリでは、“Read Disturb”現象によるエラーは、データを読み出す選択セル以外のセルで発生すると考えられるため、いつどこでどれだけ発生するか予測がつかない。ECC等、自装置の修復能力を超えて発生するおそれもある。アプリケーションプログラム501の実行中に顕在的にエラーが発生して、トラブルを招く場合もあるし、アプリケーションプログラム501の実行中にはエラーが発生せず、潜在的に存在していて突然トラブルを招く場合もある。そこで、第1の実施の形態では、アプリケーションプログラム501の実行中に発生する顕在的なエラーのデータ修復処理について説明し、第2の実施の形態では、潜在的なエラーのデータ修復処理について説明する。
{Data restoration processing}
Next, the data restoration process in this system will be specifically described. As described above, for example, in a NAND flash memory, an error due to the “Read Disturb” phenomenon is considered to occur in cells other than the selected cell from which data is read, and therefore it is not predictable when and where. There is also a risk that it may occur beyond the repair capability of the device itself, such as ECC. There may be a case where an error occurs explicitly during the execution of the
{第1の実施の形態}
図2に本実施の形態におけるフローチャートを、図3に本実施の形態における情報処理装置3aのブロック図を示す。図3に示すように、本実施の形態では、フラッシュメモリ5に、アプリケーションプログラム501とともに、記憶データを修復する修復プログラム10が記憶されている場合を例示している。修復プログラム10は、アプリケーションプログラム501の中に修復ルーチンとして組み込まれている場合もある。なお、図1において、情報処理装置3a等は、ネットワーク1に接続されてアクセス可能な状態になっている。
{First embodiment}
FIG. 2 shows a flowchart in the present embodiment, and FIG. 3 shows a block diagram of the
まず、ユーザからホストシステム6に対して、オンラインゲーム等、アプリケーションプログラム501の実行指示が行われる(ステップS1)。そうすると、ホストシステム6は、アプリケーションプログラム501の読み出しに先立って、修復プログラム10をバッファメモリ7に読み出す(ステップS2)。読み出された修復プログラム10は、バッファメモリ7に常駐し、少なくともアプリケーションプログラム501の実行中は実行可能な状態に保持される。その後、アプリケーションプログラム501が、バッファメモリ7を介して読み出され、ホストシステム6によって実行される(ステップS3)。アプリケーションプログラム501の実行中、ユーザは情報処理装置3を操作してゲーム等を楽しむことができる。修復プログラム10は、エラーが発生した時点でバッファメモリ7に読み出すようにしてもよい。
First, an instruction to execute an
そして、そのゲーム等のアプリケーションプログラム501の実行中に、そのアプリケーションプログラム501を構成している記憶データにエラーが発生すると、エラーが発生した直後に、ホストシステム6によって修復プログラム10が実行される(ステップS4)。
If an error occurs in the storage data constituting the
図4は、修復プログラム10による処理の流れを示すフローチャートを示している。修復プログラム10は、ホストシステム6から実行指示を受けると(ステップS10)、ネットワーク1を介して、同一のアプリケーションプログラム501を備えるサーバ2、または同一のアプリケーションプログラム501を備える他の情報処理装置3bにアクセスする(ステップS11)。たとえば、対戦型のオンラインゲームを行うゲーム機であれば、対戦相手となっているゲーム機にアクセスすることができる。
FIG. 4 shows a flowchart showing the flow of processing by the
そして、修復プログラム10は、記憶データの修復に必要なデータ(取得データ)を取得するとともに、フラッシュメモリ5に取得データを記憶してデータ修復を行うのである(ステップS12、ステップS13)。
The
図5に、修復プログラム10によるデータ修復の具体例を示す。図5の(a)に示すように、フラッシュメモリ5はFAT5cと記憶領域とを含む。記憶領域は、複数の書き込み、読み出し単位であるページ5dと、複数のページ5dからなり、データの消去単位であるブロック5eとで構成されている。ここでは説明上、図5に示すように、A〜Dのデータが記憶されている複数のページ5d、・・、5dで一つのブロック5eが形成されていて、その中のCのデータが記憶されているページ5dの領域内で“Read Disturb”現象による書き換えが起きてエラーが発生したものとする(C→Z)。
FIG. 5 shows a specific example of data restoration by the
この場合、修復プログラム10は、ブロック5eを構成するデータを、ネットワークを介して外部から一括して取得する。そして、自装置のフラッシュメモリ5に記憶されているブロック5eを消去して、そこに取得したデータを書き込むことでデータの修復を行う。アプリケーションプログラム501の全体を構成するデータを取得して、これを丸ごと書き換えてデータの修復を行うこともできる。要は、少なくともエラーが発生した記憶データを含むデータを取得して、これをエラーが含まれるデータと書き換えればよい。書き換えであるため、フラッシュメモリ5の記憶領域が効率よく利用できる。とくに“Read Disturb”現象によるエラーは書き換え、消去によって回復できるため、効果的である。
In this case, the
また、図5の(b)や(c)に示すように、フラッシュメモリ5の未使用領域5bを利用してもよい。この場合、情報処理装置3には、FAT5c等、フラッシュメモリ5に記憶されている記憶データの格納情報を管理する管理手段を設けておく。そして、図5の(b)に示すように、ブロック5e単位で取得した取得データを、未使用領域5bに記憶するとともに、管理手段におけるアプリケーションプログラム501中での実行順序を新たに組み替えることにより、取得データに代替するのである。これによれば、データ修復の一連の過程で消去処理が不要になるため、上書きする場合に比べて処理時間を短縮でき、緊急を要する場合に効果的である。もちろん、元のブロック5eは、消去して再利用できる。
Further, as shown in FIGS. 5B and 5C, an
図5の(c)に示すように、ページ5d単位で処理することもできる。未使用領域5bを利用するため、ブロック5e単位で処理しなくてもよいからである。具体的には、先と同様に、情報処理装置3にフラッシュメモリ5に記憶されている記憶データの格納情報を管理する管理手段を設け、ページ5d単位で取得した取得データを、未使用領域5bに記憶する。そして、管理手段が管理する論理アドレスのチェーン情報を変更すること等により、アプリケーションプログラム501中での実行順序を新たに組み替え、取得データに代替するのである。
As shown in FIG. 5C, processing can be performed in units of
この処理は、修復に要するデータ量が小さく極短時間で修復できるため、アプリケーションプログラム501の実行中のデータ修復方法として好適である。ただし、消去はブロック5e単位で行われるため、エラーのあるページ5dはそのままフラッシュメモリ5に残ることとなる。
This process is suitable as a data restoration method during execution of the
また、本実施の形態の修復プログラム10は、アプリケーションプログラム501に付随しているため、アプリケーションプログラム501の特性に合わせて修復プログラム10を設定できる利点がある。
Further, since the
{第2の実施の形態}
図6に本実施の形態におけるフローチャートを、図7に本実施の形態における情報処理装置3のブロック図を示す。図7に示すように、本実施の形態では、修復プログラム10がホストシステム6に備えられる場合を例示している。図1において、情報処理装置3a等はネットワーク1に接続されてアクセス可能な状態になっている。
{Second Embodiment}
FIG. 6 shows a flowchart in the present embodiment, and FIG. 7 shows a block diagram of the
修復プログラム10は、第1の実施の形態と同じく、フラッシュメモリ5にアプリケーションプログラム501とともに記憶されている場合や、アプリケーションプログラム501の中に修復ルーチンとして組み込まれている場合であってもよい。その場合には、予め前もって、あるいは、エラーが発生した時点でホストシステム6側に読み出す。要するに、修復プログラム10が実行可能な状態になっていればよい。
Similarly to the first embodiment, the
本実施の形態のネットワーク1は、一般的なネットワークが利用できるが、なかでも、ワイヤレスネットワークや電力線搬送通信を介したネットワークを利用するのが好ましい。情報処理装置3がスリープ状態にあるときや、充電状態にあるときに、人知れずデータの修復を行うことができ、ユーザに対して不安感を与えることがないからである。
The
修復プログラム10は、たとえば、情報処理装置3への電源投入時や電源切断時、アプリケーションプログラム501の起動時や終了時、アイドル時、データバックアップ時、アプリケーションプログラム501の実行中における一定の周期等、所定のタイミングでフラッシュメモリ5に記憶されている記憶データにエラーがないか否かを調べる(ステップS20)。そして、フラッシュメモリ5中にエラーを生じた記憶データを発見した場合、その記憶データの位置や数など、修復に必要なデータが修復情報として記憶される(ステップS21)。修復情報は、たとえば、バッファメモリ7等、情報処理装置3が有するいずれかの記憶装置(修復情報記憶手段)に記憶される(ステップS21)。なお、これら一連の処理は、ユーザに不安を与えないように、アプリケーションプログラム501のバックグランドで行われる。
The
次に、アプリケーションプログラム501の休止中、たとえば、情報処理装置3がスリープ状態にあるときや充電状態にあるときに、記憶された修復情報に基づき、修復プログラム10によって記憶データの修復が行われる(ステップS22)。たとえば、夜間など、アプリケーションプログラム501が実行されない時間帯に実行させるとよい。
Next, during the suspension of the
修復プログラム10による具体的なデータ修復の流れは、第1の実施の形態で説明したものと異ならないため、説明は省略する(図4、図5参照)。
Since the specific flow of data restoration by the
本実施の形態では、アプリケーションプログラム501の休止中にデータの修復を行うため、たとえば、データ全体の書き換え等、時間を要するデータ修復処理を安全確実に行うことができる利点がある。修復プログラム10をホストシステム6側に設けた場合、フラッシュメモリ5の記憶領域をアプリケーションプログラム501のデータ記憶用として最大限利用できる点でも有利である。
In the present embodiment, since data restoration is performed while the
以上のように、本発明のフラッシュメモリのデータ修復システムによれば、ネットワークを利用して自装置の外部からデータを取得し、そのデータに基づいてデータ修復を行うので、仮にフラッシュメモリに自装置のエラー訂正能力を超えるエラーが発生しても、データ修復ができるようになっている。 As described above, according to the flash memory data restoration system of the present invention, data is acquired from the outside of the own device using a network and data restoration is performed on the basis of the data. Even if an error exceeding the error correction capability occurs, data recovery can be performed.
同じ記憶データを記憶する情報処理装置3が複数あれば、サーバ2は必ずしも必要ではない。また、同じ記憶データを記憶するサーバ2があれば、同じ記憶データを記憶する情報処理装置3は複数でなくてもよい。
If there are a plurality of
修復に用いるフラッシュメモリの未使用領域5bは、必ずしもデータ修復が行われるフラッシュメモリのものでなくてもよく、情報処理装置3に実装されている他の再書き込み可能な不揮発性半導体メモリの未使用領域が利用できる。たとえば、情報処理装置3に、別途NOR型フラッシュメモリが実装されていれば、その未使用領域を利用することができる。そうすることで、対象となるデータの信頼性をより確実にできる。
The
フラッシュメモリ5の未使用領域5bに記憶した取得データの格納情報を管理する管理手段は、必ずしもFAT5cでなくてもよい。たとえば、情報処理装置3のホストシステム6内や、情報処理装置3に実装されている他の再書き込み可能な不揮発性半導体メモリなどを利用して、管理テーブルを設定することができる。
The management means for managing the storage information of the acquired data stored in the
状況に合ったデータ修復機能が発揮できるように、第1と第2の実施の形態における構成を組み合わせてもよい。具体的には、修復プログラム10をフラッシュメモリ5と、ホストシステム6との双方に組み込む。そうすれば、アプリケーションプログラム501の実行時には、比較的短時間で修復処理ができ、アプリケーションプログラム501が休止中に全データを書き換える等、より万全を期したデータ修復処理を組み合わせて行うことができる。もちろん、組み込まれる修復プログラム10は、必ずしも同一である必要はなく、それぞれの機能特性に合わせて設定可能である。
The configurations in the first and second embodiments may be combined so that a data restoration function suitable for the situation can be exhibited. Specifically, the
データ修復処理は、記憶データをバッファメモリ7に読み出さずに、フラッシュメモリ5上で直接実行してもよい。たとえば、フラッシュメモリ5の未使用領域5bの一部をバッファメモリ7に代用することができる。
The data restoration process may be executed directly on the
ECC等の自装置の修復能力を超えるトラブルが発生した場合だけでなく、自装置の修復能力の範囲内であっても適用可能である。ECC等のエラー修正機能とは別に重畳的に組み込んでもよい。 The present invention is applicable not only when a trouble exceeding the repair capability of the own device such as ECC occurs but also within the range of the repair capability of the own device. In addition to error correction functions such as ECC, they may be incorporated in a superimposed manner.
たとえば、エラーの発生回数の累積値やエラーの発生頻度等、エラーに関連する所定の閾値を設定する。そして、修復プログラム10に、その閾値を超えるエラーが発生しているか否かを調べる手段を設け、その閾値を超えるエラーが発生した場合に、データの修復を行うようにするのである。そうすることで、エラーの累積によるシステムの暴走等、重大なトラブルを招くリスクを減少させることができ、効果的である。
For example, a predetermined threshold related to an error, such as an accumulated value of the number of occurrences of errors or an error occurrence frequency, is set. Then, the
第1の実施の形態における修復プログラム10は、ホストシステム6側に備えられていてもよい。第2の実施の形態における修復プログラム10は、フラッシュメモリ5側に備えられていてもよい。
The
上記実施の形態では、“Read Disturb”現象によるエラーを例に説明したが、必ずしもそれに限られるものではない。 In the above embodiment, an error due to the “Read Disturb” phenomenon has been described as an example, but the present invention is not necessarily limited thereto.
1 ネットワーク
2 サーバ
3 情報処理装置
5 不揮発性半導体メモリ
6 ホストシステム
DESCRIPTION OF
Claims (14)
前記不揮発性半導体メモリに記憶された記憶データを処理するホストシステムと、
を備える情報処理装置を含み、
前記記憶データが変化してエラーを発生した場合に、ネットワークを介して、前記情報処理装置の外部から前記記憶データに関する情報を取得して前記記憶データを修復する手段、
を備えることを特徴とする不揮発性半導体メモリのデータ修復システム。 A rewritable nonvolatile semiconductor memory;
A host system for processing stored data stored in the nonvolatile semiconductor memory;
Including an information processing apparatus comprising:
Means for acquiring information relating to the storage data from outside the information processing apparatus and restoring the storage data via the network when the storage data has changed and an error has occurred;
A data recovery system for a nonvolatile semiconductor memory, comprising:
前記記憶データと同一のデータを記憶するサーバを含み、
前記情報処理装置が、前記サーバにアクセスして前記記憶データを修復することを特徴とする不揮発性半導体メモリのデータ修復システム。 A nonvolatile semiconductor memory data recovery system according to claim 1,
Including a server for storing the same data as the stored data,
A data recovery system for a nonvolatile semiconductor memory, wherein the information processing apparatus accesses the server to recover the stored data.
前記記憶データと同一のデータを記憶する前記情報処理装置を複数含み、
いずれかの情報処理装置が、他の情報処理装置にアクセスして前記記憶データを修復することを特徴とする不揮発性半導体メモリのデータ修復システム。 A nonvolatile semiconductor memory data recovery system according to claim 1,
Including a plurality of the information processing devices for storing the same data as the stored data;
A data restoration system for a nonvolatile semiconductor memory, wherein any one of the information processing apparatuses accesses another information processing apparatus to restore the stored data.
前記記憶データを修復する修復プログラム、
を備え、
アプリケーションプログラムの実行中にエラーが発生した場合に、前記修復プログラムに基づいて前記記憶データを修復することを特徴とする不揮発性半導体メモリのデータ修復システム。 A data recovery system for a nonvolatile semiconductor memory according to any one of claims 1 to 3,
A repair program for repairing the stored data;
With
A data recovery system for a nonvolatile semiconductor memory, wherein, when an error occurs during execution of an application program, the stored data is repaired based on the repair program.
前記修復プログラムが、前記不揮発性半導体メモリに、前記アプリケーションプログラムとともに記憶されていることを特徴とする不揮発性半導体メモリのデータ修復システム。 A data recovery system for a nonvolatile semiconductor memory according to claim 4,
A data repair system for a nonvolatile semiconductor memory, wherein the repair program is stored in the nonvolatile semiconductor memory together with the application program.
前記ホストシステムが、
前記不揮発性半導体メモリから読み出した記憶データを一時的に記憶するバッファメモリ、
を備え、
前記バッファメモリに前記修復プログラムを読み出して実行することを特徴とする不揮発性半導体メモリのデータ修復システム。 A data recovery system for a nonvolatile semiconductor memory according to claim 4 or 5,
The host system is
A buffer memory for temporarily storing storage data read from the nonvolatile semiconductor memory;
With
A data restoration system for a nonvolatile semiconductor memory, wherein the restoration program is read into the buffer memory and executed.
前記アプリケーションプログラムの実行前に、予め前記修復プログラムを前記バッファメモリに読み出しておくことを特徴とする不揮発性半導体メモリのデータ修復システム。 A data recovery system for a nonvolatile semiconductor memory according to claim 6,
A data repair system for a nonvolatile semiconductor memory, wherein the repair program is read into the buffer memory in advance before the application program is executed.
前記アプリケーションプログラムの実行中のエラー発生時に、前記修復プログラムを前記バッファメモリに読み出すことを特徴とする不揮発性半導体メモリのデータ修復システム。 A data recovery system for a nonvolatile semiconductor memory according to claim 6,
A data repair system for a nonvolatile semiconductor memory, wherein the repair program is read into the buffer memory when an error occurs during execution of the application program.
前記記憶データを修復する修復プログラム、
を備え、
前記修復プログラムが、
前記記憶データにエラーがないか否かを調べる手段と、
前記記憶データにエラーを発見した場合に、その情報を記憶する修復情報記憶手段と、
所定のタイミングで、前記修復情報記憶手段に記憶された情報に基づいて前記記憶データを修復する手段と、
を有することを特徴とする不揮発性半導体メモリのデータ修復システム。 A data recovery system for a nonvolatile semiconductor memory according to any one of claims 1 to 3,
A repair program for repairing the stored data;
With
The repair program is
Means for checking whether there is an error in the stored data;
When an error is found in the stored data, repair information storage means for storing the information,
Means for repairing the stored data based on information stored in the repair information storage means at a predetermined timing;
A data recovery system for a nonvolatile semiconductor memory, comprising:
前記情報処理装置がスリープ状態にあるときに、前記記憶データを修復することを特徴とする不揮発性半導体メモリのデータ修復システム。 A nonvolatile semiconductor memory data recovery system according to claim 9,
A data recovery system for a nonvolatile semiconductor memory, wherein the stored data is recovered when the information processing apparatus is in a sleep state.
前記情報処理装置が充電状態にあるときに、前記記憶データを修復することを特徴とする不揮発性半導体メモリのデータ修復システム。 A nonvolatile semiconductor memory data recovery system according to claim 9,
A data recovery system for a nonvolatile semiconductor memory, wherein the stored data is recovered when the information processing apparatus is in a charged state.
少なくともエラーが発生した記憶データと同一のデータを取得し、エラーが発生した記憶データをこれに書き換えることにより、前記記憶データの修復を行うことを特徴とする不揮発性半導体メモリのデータ修復システム。 A data recovery system for a nonvolatile semiconductor memory according to any one of claims 1 to 11,
A data recovery system for a nonvolatile semiconductor memory, wherein at least the same data as the stored data in which an error has occurred is acquired, and the stored data in which the error has occurred is rewritten to this to restore the stored data.
前記情報処理装置が、
再書き込み可能な不揮発性半導体メモリの未使用領域と、
前記未使用領域に記憶される記憶データの格納情報を管理する管理手段と、
を有し、
少なくともエラーを発生した前記記憶データと同一のデータを取得して、前記未使用領域に取得データとして記憶するとともに、前記管理手段によって前記取得データを前記記憶データに代替することにより、前記記憶データの修復を行うことを特徴とする不揮発性半導体メモリのデータ修復システム。 A data recovery system for a nonvolatile semiconductor memory according to any one of claims 1 to 12,
The information processing apparatus is
An unused area of the rewritable nonvolatile semiconductor memory, and
Management means for managing storage information of storage data stored in the unused area;
Have
By acquiring at least the same data as the stored data in which an error has occurred and storing it in the unused area as acquired data, and replacing the acquired data with the stored data by the management means, A data recovery system for a nonvolatile semiconductor memory, characterized by performing recovery.
前記記憶データのエラーが、Read Disturb現象によって引き起こされたものであることを特徴とする不揮発性半導体メモリのデータ修復システム。 A data recovery system for a nonvolatile semiconductor memory according to any one of claims 1 to 13,
A data recovery system for a nonvolatile semiconductor memory, wherein the stored data error is caused by a Read Disturb phenomenon.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007028169A JP2008192053A (en) | 2007-02-07 | 2007-02-07 | Data recovery system for nonvolatile semiconductor memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007028169A JP2008192053A (en) | 2007-02-07 | 2007-02-07 | Data recovery system for nonvolatile semiconductor memory |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008192053A true JP2008192053A (en) | 2008-08-21 |
Family
ID=39752076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007028169A Withdrawn JP2008192053A (en) | 2007-02-07 | 2007-02-07 | Data recovery system for nonvolatile semiconductor memory |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008192053A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011053775A (en) * | 2009-08-31 | 2011-03-17 | Ricoh Co Ltd | Print system, automatic restoration method of initiation program, and control automatic restoration control program |
JP2012248054A (en) * | 2011-05-30 | 2012-12-13 | Mega Chips Corp | Information processing terminal and management server |
-
2007
- 2007-02-07 JP JP2007028169A patent/JP2008192053A/en not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011053775A (en) * | 2009-08-31 | 2011-03-17 | Ricoh Co Ltd | Print system, automatic restoration method of initiation program, and control automatic restoration control program |
JP2012248054A (en) * | 2011-05-30 | 2012-12-13 | Mega Chips Corp | Information processing terminal and management server |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI546666B (en) | Data storage device and flash memory control method | |
US10061512B2 (en) | Data storage device and data writing method thereof | |
TWI570737B (en) | Data storage device and flash memory control method | |
JP5283845B2 (en) | Bit error prevention method and information processing apparatus | |
JP2008198310A (en) | Method for repairing bit error and information processing system | |
TWI522804B (en) | Flash memory controller and data storage device and flash memory control method | |
JP5990430B2 (en) | SSD (solid state drive) device | |
US20080104361A1 (en) | Storage Device, Memory Managing Apparatus, Memory Managing Method, and Program | |
US8402204B2 (en) | Methods for measuring usable lifespan and replacing an in-system programming code of a memory device, and data storage system using the same | |
KR20110098567A (en) | Method and apparatus for generating minimal boot image | |
CN101140524A (en) | Program starting control device | |
TW201915725A (en) | Data storage device and methods for processing data in the data storage device | |
JP5981906B2 (en) | Image forming apparatus | |
JP5183662B2 (en) | Memory control device and memory control method | |
JP2008192053A (en) | Data recovery system for nonvolatile semiconductor memory | |
CN103389943A (en) | Control device, storage device, and storage control method | |
JP2013250603A (en) | Memory management device and method and program | |
JP4818453B1 (en) | Electronic device and data reading method | |
JP2010256944A (en) | Device, program and method for maintaining nand type flash memory | |
JP2009276883A (en) | Semiconductor auxiliary storage device | |
JP6241373B2 (en) | Storage device, flash memory control device, and program | |
JP2014112419A (en) | Mobile terminal apparatus, software update method, operation control method, and program | |
US9971659B1 (en) | Memory programming providing corruption protection | |
JP5770557B2 (en) | Information regeneration apparatus, memory control system, information regeneration method, and computer program | |
JP2008191855A (en) | Semiconductor storage device and memory control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20100511 |