JP2008192054A - Semiconductor memory system - Google Patents
Semiconductor memory system Download PDFInfo
- Publication number
- JP2008192054A JP2008192054A JP2007028170A JP2007028170A JP2008192054A JP 2008192054 A JP2008192054 A JP 2008192054A JP 2007028170 A JP2007028170 A JP 2007028170A JP 2007028170 A JP2007028170 A JP 2007028170A JP 2008192054 A JP2008192054 A JP 2008192054A
- Authority
- JP
- Japan
- Prior art keywords
- error correction
- correction code
- semiconductor memory
- data
- error
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 239000004065 semiconductor Substances 0.000 title claims abstract description 102
- 230000015654 memory Effects 0.000 claims abstract description 120
- 238000000034 method Methods 0.000 claims abstract description 43
- 230000008569 process Effects 0.000 claims description 34
- 238000001514 detection method Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 7
- 230000010365 information processing Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000007704 transition Effects 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000004193 electrokinetic chromatography Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
本発明は、フラッシュメモリなどの再書き込み可能な不揮発性半導体メモリから正しいデータを取得するための技術に関する。詳しくは、フラッシュメモリからデータが繰り返し読み出されることにより、データが意図せず書き換えられる現象に対しても、正しくデータを供給する技術に関する。 The present invention relates to a technique for acquiring correct data from a rewritable nonvolatile semiconductor memory such as a flash memory. More specifically, the present invention relates to a technique for correctly supplying data against a phenomenon that data is unintentionally rewritten by repeatedly reading data from a flash memory.
不揮発性メモリの中でも、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.
図11は、NANDフラッシュメモリの模式図である。NANDフラッシュメモリは、格子状に配線されたビット線41とワード線42、43、44、メモリセル52、53、選択トランジスタ54などから構成されている。
FIG. 11 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.
上述の特許文献は、メモリセル内部の制御方法により、“Read Disturb”現象を回避する手段を提供するものである。しかし、ここで開示されている方法は、特定のセル構造を有するメモリに対して適用可能な方法であり、他のセル構造に適用可能なものではない。つまり、メモリのセル構造に依存することなく、“Read Disturb”現象を回避できる方策ではない。 The above-mentioned patent document provides means for avoiding the “Read Disturb” phenomenon by a control method inside a memory cell. However, the method disclosed herein is a method applicable to a memory having a specific cell structure, and is not applicable to other cell structures. That is, it is not a measure that can avoid the “Read Disturb” phenomenon without depending on the cell structure of the memory.
そこで、本発明は前記問題点に鑑み、メモリのセル構造に制約を受けることなく、様々なタイプの不揮発性メモリにおいても、“Read Disturb”現象の発生する可能性のあるメモリから正しいデータを読み出すための技術を提供することを目的とする。 Therefore, in view of the above problems, the present invention reads out correct data from a memory in which a “Read Disturb” phenomenon may occur even in various types of non-volatile memories without being restricted by the cell structure of the memory. It aims at providing the technique for.
上記課題を解決するため、請求項1記載の発明は、第1のエラー訂正コードあるいは第1のエラー訂正コードより訂正能力の高い第2のエラー訂正コードが付加されたデータが格納される再書き込み可能な不揮発性半導体メモリと、前記不揮発性半導体メモリに対するアクセスを制御するメモリコントローラと、を備え、前記メモリコントローラは、第1のエラー訂正コードおよび第2のエラー訂正コードを利用した誤り訂正処理を実行することが可能であり、前記メモリコントローラは、前記不揮発性半導体メモリから読み出したデータに対して、第1のエラー訂正コードあるいは第2のエラー訂正コードを利用して誤り訂正処理を実行する手段、を備えることを特徴とする。 In order to solve the above-mentioned problem, the invention according to claim 1 is characterized in that the first error correction code or the data to which the second error correction code having a higher correction capability than the first error correction code is stored is rewritten. And a memory controller that controls access to the nonvolatile semiconductor memory, the memory controller performing error correction processing using the first error correction code and the second error correction code The memory controller can execute the error correction process on the data read from the nonvolatile semiconductor memory by using the first error correction code or the second error correction code. It is characterized by providing.
請求項2記載の発明は、データが格納される再書き込み可能な不揮発性半導体メモリと、前記不揮発性半導体メモリに格納されたデータを訂正するための第1のエラー訂正コードあるいは第1のエラー訂正コードより訂正能力の高い第2のエラー訂正コードが格納される訂正コード記憶手段と、前記不揮発性半導体メモリに対するアクセスを制御するメモリコントローラと、を備え、前記メモリコントローラは、第1のエラー訂正コードおよび第2のエラー訂正コードを利用した誤り訂正処理を実行することが可能であり、前記メモリコントローラは、前記不揮発性半導体メモリから読み出したデータに対して、第1のエラー訂正コードあるいは第2のエラー訂正コードを利用して誤り訂正処理を実行する手段、を備えることを特徴とする。 The invention described in claim 2 is a rewritable nonvolatile semiconductor memory in which data is stored, and a first error correction code or a first error correction for correcting the data stored in the nonvolatile semiconductor memory. Correction code storage means for storing a second error correction code having a higher correction capability than the code, and a memory controller for controlling access to the nonvolatile semiconductor memory, wherein the memory controller includes the first error correction code. And the error correction process using the second error correction code can be executed, and the memory controller performs the first error correction code or the second error correction on the data read from the nonvolatile semiconductor memory. Means for executing an error correction process using an error correction code.
請求項3記載の発明は、請求項1に記載の半導体メモリシステムにおいて、前記メモリコントローラは、さらに、データに対して第1のエラー訂正コードを利用して誤り訂正を行った後、読み出しデータに係る第2のエラー訂正コードを生成し、前記不揮発性半導体メモリに、生成した第2のエラー訂正コードを格納するエラー訂正コード格納手段、を備えることを特徴とする。 According to a third aspect of the present invention, in the semiconductor memory system according to the first aspect, the memory controller further performs error correction on the data using the first error correction code, and then converts the data into read data. An error correction code storage unit that generates the second error correction code and stores the generated second error correction code in the nonvolatile semiconductor memory is provided.
請求項4記載の発明は、請求項2に記載の半導体メモリシステムにおいて、前記メモリコントローラは、さらに、データに対して第1のエラー訂正コードを利用して誤り訂正を行った後、読み出しデータに係る第2のエラー訂正コードを生成し、前記訂正コード記憶手段に、生成した第2のエラー訂正コードを格納するエラー訂正コード格納手段、を備えることを特徴とする。 According to a fourth aspect of the present invention, in the semiconductor memory system according to the second aspect, the memory controller further performs error correction on the data using the first error correction code, and then converts the data into read data. An error correction code storage unit that generates the second error correction code and stores the generated second error correction code in the correction code storage unit is provided.
請求項5記載の発明は、請求項3または請求項4に記載の半導体メモリシステムにおいて、前記訂正コード格納手段は、読み出しデータに関してエラーが発生したとき、エラービットの数が所定の閾値を超えている場合に、第2のエラー訂正コードを格納することを特徴とする。 According to a fifth aspect of the present invention, in the semiconductor memory system according to the third or fourth aspect, when the error relating to the read data is generated, the correction code storage means has a number of error bits exceeding a predetermined threshold value. The second error correction code is stored.
請求項6記載の発明は、請求項3または請求項4に記載の半導体メモリシステムにおいて、前記訂正コード格納手段は、読み出しデータに関してエラーが発生したとき、エラービットの数に関わらず、第2のエラー訂正コードを格納することを特徴とする。 According to a sixth aspect of the present invention, in the semiconductor memory system according to the third or fourth aspect, the correction code storage means is configured so that when an error occurs with respect to read data, the second code is stored regardless of the number of error bits. An error correction code is stored.
請求項7記載の発明は、請求項1に記載の半導体メモリシステムにおいて、前記メモリコントローラは、さらに、前記不揮発性半導体メモリからからデータを読み出したとき、その領域の読み出し回数が、所定の回数を超えていた場合は、読み出しデータに係る第2のエラー訂正コードを生成し、前記不揮発性半導体メモリに、生成した第2のエラー訂正コードを格納するエラー訂正コード格納手段、を備えることを特徴とする。 According to a seventh aspect of the present invention, in the semiconductor memory system according to the first aspect, when the memory controller further reads data from the non-volatile semiconductor memory, the number of times of reading the area is a predetermined number of times. A second error correction code related to the read data is generated when the error is exceeded, and error correction code storage means for storing the generated second error correction code in the nonvolatile semiconductor memory is provided. To do.
請求項8記載の発明は、請求項2に記載の半導体メモリシステムにおいて、前記メモリコントローラは、さらに、前記不揮発性半導体メモリからからデータを読み出したとき、その領域の読み出し回数が、所定の回数を超えていた場合は、読み出しデータに係る第2のエラー訂正コードを生成し、前記訂正コード記憶手段に、生成した第2のエラー訂正コードを格納するエラー訂正コード格納手段、を備えることを特徴とする。 According to an eighth aspect of the present invention, in the semiconductor memory system according to the second aspect, when the memory controller further reads data from the non-volatile semiconductor memory, the number of times the area is read is a predetermined number of times. If it exceeds, an error correction code storage means for generating a second error correction code related to the read data and storing the generated second error correction code in the correction code storage means, To do.
請求項9記載の発明は、請求項1に記載の半導体メモリシステムにおいて、前記不揮発性半導体メモリには、各記憶領域のデータについて第1のエラー訂正コードを使用するのか、第2のエラー訂正コードを使用するのかを指定する指定情報が記憶されていることを特徴とする。 According to a ninth aspect of the present invention, in the semiconductor memory system according to the first aspect, the first error correction code is used for the data in each storage area in the nonvolatile semiconductor memory, or the second error correction code is used. It is characterized in that designation information for designating whether to use is stored.
請求項10記載の発明は、請求項2に記載の半導体メモリシステムにおいて、前記訂正コード記憶手段には、各記憶領域のデータについて第1のエラー訂正コードを使用するのか、第2のエラー訂正コードを使用するのかを指定する指定情報が記憶されていることを特徴とする。 According to a tenth aspect of the present invention, in the semiconductor memory system according to the second aspect, the correction code storage means uses a first error correction code for data in each storage area, or a second error correction code. It is characterized in that designation information for designating whether to use is stored.
請求項11記載の発明は、請求項9または請求項10に記載の半導体メモリシステムにおいて、前記訂正コード格納手段は、第2のエラー訂正コードを格納した後、前記指定情報についても、第2のエラー訂正コードを指定する情報に書き換えることを特徴とする。 According to an eleventh aspect of the present invention, in the semiconductor memory system according to the ninth or tenth aspect of the present invention, the correction code storage means stores the second error correction code, and then stores the specified information with respect to the second information. It is characterized by rewriting the information to specify an error correction code.
請求項12記載の発明は、第1のエラー訂正コードおよび第1のエラー訂正コードより訂正能力の高い第2のエラー訂正コードが付加されたデータが格納される再書き込み可能な前記不揮発性半導体メモリと、前記不揮発性半導体メモリに対するアクセスを制御するメモリコントローラと、を備え、前記不揮発性半導体メモリには、各記憶領域のデータについて第1のエラー訂正コードが適用されているのか、第2のエラー訂正コードが適用されているのかを指定する指定情報が記憶されており、前記メモリコントローラは、第1のエラー訂正コードおよび第2のエラー訂正コードを利用した誤り訂正処理を実行することが可能であり、前記メモリコントローラは、前記不揮発性半導体メモリから読み出したデータに対して、前記指定情報で指定されている第1のエラー訂正コードあるいは第2のエラー訂正コードを利用して誤り訂正処理を実行する手段、を備えることを特徴とする。 The invention according to claim 12 is the rewritable nonvolatile semiconductor memory in which the first error correction code and the data to which the second error correction code having higher correction capability than the first error correction code is added are stored. And a memory controller that controls access to the non-volatile semiconductor memory, wherein the first error correction code is applied to the data in each storage area in the non-volatile semiconductor memory, or a second error Specification information for specifying whether a correction code is applied is stored, and the memory controller can execute an error correction process using the first error correction code and the second error correction code. The memory controller uses the designation information for data read from the nonvolatile semiconductor memory. Utilizing the first error correction code or the second error correction code that is a constant, characterized in that it comprises, means for performing an error correction process.
請求項13記載の発明は、データが格納される再書き込み可能な不揮発性半導体メモリと、前記不揮発性半導体メモリに格納されたデータを訂正するための第1のエラー訂正コードおよび第1のエラー訂正コードより訂正能力の高い第2のエラー訂正コードが格納される訂正コード記憶手段と、前記不揮発性半導体メモリに対するアクセスを制御するメモリコントローラと、を備え、前記訂正コード記憶手段には、各記憶領域のデータについて第1のエラー訂正コードが適用されているのか、第2のエラー訂正コードが適用されているのかを指定する指定情報が記憶されており、前記メモリコントローラは、第1のエラー訂正コードおよび第2のエラー訂正コードを利用した誤り訂正処理を実行することが可能であり、前記メモリコントローラは、前記不揮発性半導体メモリから読み出したデータに対して、前記指定情報で指定されている第1のエラー訂正コードあるいは第2のエラー訂正コードを利用して誤り訂正処理を実行する手段、を備えることを特徴とする。 The invention according to claim 13 is a rewritable nonvolatile semiconductor memory in which data is stored, a first error correction code and a first error correction for correcting the data stored in the nonvolatile semiconductor memory. A correction code storage means for storing a second error correction code having a higher correction capability than the code; and a memory controller for controlling access to the nonvolatile semiconductor memory. Specification information for specifying whether the first error correction code or the second error correction code is applied to the data is stored, and the memory controller stores the first error correction code. And an error correction process using the second error correction code, and the memory controller Comprises means for executing an error correction process on the data read from the nonvolatile semiconductor memory using the first error correction code or the second error correction code specified by the specification information. It is characterized by that.
請求項14記載の発明は、請求項12または請求項13に記載の半導体メモリシステムにおいて、さらに、読み出しデータに対して第1のエラー訂正コードを利用して誤り訂正を行った後、当該読み出しデータに関して第2のエラー訂正コードが適用されるよう前記指定情報を書き換える指定情報変更手段、を備えることを特徴とする。 According to the fourteenth aspect of the present invention, in the semiconductor memory system according to the twelfth or thirteenth aspect, after the error correction is further performed on the read data using the first error correction code, the read data And a designated information changing means for rewriting the designated information so that the second error correction code is applied.
請求項15記載の発明は、請求項14に記載の半導体メモリシステムにおいて、前記指定情報変更手段は、読み出しデータに関してエラーが発生した場合であって、エラービットの数が所定の閾値を超えている場合に、前記指定情報を書き換えることを特徴とする。 According to a fifteenth aspect of the present invention, in the semiconductor memory system according to the fourteenth aspect, the designation information changing means is a case where an error occurs with respect to read data, and the number of error bits exceeds a predetermined threshold value. In this case, the designation information is rewritten.
請求項16記載の発明は、請求項14に記載の半導体メモリシステムにおいて、前記指定情報変更手段は、読み出しデータに関してエラーが発生した場合、エラービットの数に関わらず、前記指定情報を書き換えることを特徴とする。 According to a sixteenth aspect of the present invention, in the semiconductor memory system according to the fourteenth aspect, the designation information changing means rewrites the designation information regardless of the number of error bits when an error occurs in the read data. Features.
請求項17記載の発明は、請求項12または請求項13に記載の半導体メモリシステムにおいて、前記メモリコントローラは、さらに、前記不揮発性半導体メモリからデータを読み出したとき、その領域の読み出し回数が、所定の回数を超えていた場合は、当該読み出しデータに関して第2のエラー訂正コードが適用されるよう前記指定情報を書き換える指定情報変更手段、を備えることを特徴とする。 According to a seventeenth aspect of the present invention, in the semiconductor memory system according to the twelfth or thirteenth aspect, when the memory controller further reads data from the non-volatile semiconductor memory, the number of times the area is read is predetermined. When the number of times exceeds the specified number of times, there is provided specification information changing means for rewriting the specification information so that the second error correction code is applied to the read data.
請求項18記載の発明は、請求項1、請求項2、請求項12および請求項13のいずれかに記載の半導体メモリシステムにおいて、前記不揮発性半導体メモリに記憶されるデータの中で、読み出しアクセスが多数発生すると想定されたデータに関しては、第2のエラー訂正コードが使用されることを特徴とする。
The invention according to
請求項19記載の発明は、請求項1、請求項2、請求項12および請求項13のいずれかに記載の半導体メモリシステムにおいて、前記不揮発性半導体メモリの記憶領域の中で、読み出しエラーが発生すると想定された記憶領域に格納されるデータに関しては、第2のエラー訂正コードが使用されることを特徴とする。 According to a nineteenth aspect of the present invention, in the semiconductor memory system according to any one of the first, second, twelfth and thirteenth aspects, a read error occurs in the storage area of the nonvolatile semiconductor memory. The second error correction code is used for the data stored in the assumed storage area.
請求項20記載の発明は、請求項1、請求項2、請求項12および請求項13のいずれかに記載の半導体メモリシステムにおいて、前記不揮発性半導体メモリに記憶されるデータの中で、重要度の高いデータに関しては、第2のエラー訂正コードが使用されることを特徴とする。 According to a twentieth aspect of the present invention, in the semiconductor memory system according to any one of the first, second, twelfth, and thirteenth aspects, the importance degree among the data stored in the nonvolatile semiconductor memory For high data, the second error correction code is used.
本発明のメモリシステムは、再書き込み可能な不揮発性半導体メモリを備える。そして、不揮発性半導体メモリに記憶されるデータには、第1のエラー訂正コードあるいは第1のエラー訂正コードより訂正能力の高い第2のエラー訂正コードが付加されている。これにより、条件に応じて、処理能力が低いが処理負荷の低いエラー訂正と、訂正能力が高いが処理負荷が大きいエラー訂正を使い分けることが可能である。 The memory system of the present invention includes a rewritable nonvolatile semiconductor memory. The data stored in the nonvolatile semiconductor memory is added with the first error correction code or the second error correction code having a higher correction capability than the first error correction code. Thus, depending on conditions, it is possible to selectively use error correction with low processing capability but low processing load and error correction with high correction capability but high processing load.
また、本発明によれば、第1のエラー訂正コードによりエラー訂正を行った後、第2のエラー訂正コードを格納する。これにより、初期段階では処理負荷の小さいエラー訂正を行って高速な読み出しを行い、“Read Disturb”現象が発生した場合には、より訂正能力の高い第2のエラー訂正コードにより、正しいデータに訂正して出力可能である。 According to the present invention, the second error correction code is stored after error correction using the first error correction code. Thus, in the initial stage, error correction with a small processing load is performed and high-speed reading is performed, and when the “Read Disturb” phenomenon occurs, the data is corrected to the correct data by the second error correction code having higher correction capability. Can be output.
また、不揮発性半導体メモリに記憶されるデータには、第1のエラー訂正コードおよび第1のエラー訂正コードより訂正能力の高い第2のエラー訂正コードが付加されている。これにより、条件に応じて、処理負荷の低いエラー訂正と、訂正能力の高いエラー訂正を使い分けることが可能である。 In addition, the first error correction code and the second error correction code having a higher correction capability than the first error correction code are added to the data stored in the nonvolatile semiconductor memory. Thereby, according to conditions, it is possible to selectively use error correction with a low processing load and error correction with a high correction capability.
{第1の実施の形態}
以下、図面を参照しつつ本発明の実施の形態について説明する。図1は、本実施の形態に係る情報処理システムの機能ブロック図である。この情報処理システムは、ホストシステム1とメモリモジュール(メモリシステム)2とを備えて構成される。メモリモジュール2は、メモリコントローラ3とメモリ4とを備えている。
{First embodiment}
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a functional block diagram of the information processing system according to the present embodiment. This information processing system includes a host system 1 and a memory module (memory system) 2. The memory module 2 includes a
本実施の形態において、メモリ4は、再書き込み可能な不揮発性半導体メモリであるNANDフラッシュメモリを採用している。メモリコントローラ3は、メモリ4に対するデータの読み出しや書き込みを制御する。例えば、この情報処理システムは、ゲーム装置として機能する。この場合、ホストシステム1は、ゲーム装置本体を構成し、メモリモジュール2がゲームカートリッジを構成する。メモリモジュール2は、ホストシステム1に対して着脱自在なタイプであってもよいし、ホストシステム1を構成する装置に内蔵されるタイプであってもよい。
In the present embodiment, the
図に示すように、メモリコントローラ3は、インタフェース31、アドレスデコーダ部32、エラー訂正部33を備えている。インタフェース31は、ホストシステム1から出力された読み出しや書き込みのコマンドを入力する入力インタフェースとして、また、メモリ4から出力された読み出しデータをホストシステム1に対して出力する出力インタフェースとして機能する。あるいは、インタフェース31は、ホストシステム1から出力された書き込みデータを入力する入力インタフェースとして機能する。
As shown in the figure, the
アドレスデコーダ部32は、インタフェース31を介して入力した読み出しコマンドや書き込みコマンドから、読み出しアドレスや書き込みアドレスを取得する。メモリ4に対して読み出しアドレスが出力されると、メモリ4からは、その読み出しアドレスに対応する記憶データが読み出されるのである。また、メモリ4に対して書き込みアドレスとデータが与えられると、メモリ4に対するデータの書き込み処理が実行される。
The
ここで、本実施の形態におけるメモリモジュール2は、書き込み可能なNANDフラッシュメモリを採用しているが、上述したように、ゲームカートリッジなど、読み出しを主な目的とするメモリとして利用される。つまり、ホストシステム1から次々に出力される読み出しコマンドに応答して、指定された読み出しアドレスのデータを読み出す処理が繰り返し実行されるのである。ホストシステム1は、メモリ4から読み出されたデータを入力し、様々な処理を実行する。
Here, the memory module 2 in the present embodiment employs a writable NAND flash memory. However, as described above, the memory module 2 is used as a memory mainly for reading, such as a game cartridge. That is, in response to the read commands sequentially output from the host system 1, the process of reading the data at the designated read address is repeatedly executed. The host system 1 inputs data read from the
このように、本実施の形態においては、メモリ4に記憶されたデータの読み出し処理が繰り返し多数行われる可能性がある。そして、このようなケースにおいて、上述したように、意図せずして記憶データが書き換わる現象、つまり、“Read Disturb”現象が発生する可能性がある。そして、本実施の形態のメモリモジュール2は、この“Read Disturb”現象が発生した場合でも、エラー訂正によって、正しいデータをホストシステム1に供給可能とするための機能を備えている。
As described above, in the present embodiment, there is a possibility that many reading processes of data stored in the
図2は、メモリ4の記憶領域を示す図である。メモリ4は、図に示すように、複数のページによって管理されている。本実施の形態において、メモリ4の各ページは、NANDフラッシュメモリにおける読み出しおよび書き込み単位に対応している。つまり、メモリ4は、ページ単位でデータの読み出しおよび書き込みを可能としている。これに対して、メモリ4に対しては、複数のページからなるブロック単位で消去が可能となっている。
FIG. 2 is a diagram showing a storage area of the
そして、図に示すように、メモリ4の各ページは、実体的なデータが格納されるデータ領域41と、実体的なデータに付随した情報が格納される冗長領域42とを備えて構成されている。データ領域41には、たとえば、ゲームプログラムが格納される。
As shown in the figure, each page of the
図3および図4は、冗長領域42に格納されている情報の一部を示す図である。冗長領域42には、エラー訂正コード(ECC:Error Correcting Code)に関する情報が記録されている。本実施の形態において、各ページに記憶されるデータには、第1ECC51あるいは第2ECC52のいずれかのエラー訂正コードが付加されるのである。メモリモジュール2が供給される初期段階においては、各ページに記憶されるデータには、第1ECC51が付加されている。そして、後で説明する条件、処理によって、第1ECC51が第2ECC52に書き換えられるのである。
3 and 4 are diagrams showing a part of the information stored in the
第2ECC52は、第1ECC51よりも誤り訂正能力の高い符号である。言い換えると、第2ECC52を利用するエラー訂正アルゴリズム(第2エラー訂正アルゴリズムとする。)は、第1ECC51を利用するエラー訂正アルゴリズム(第1エラー訂正アルゴリズムとする。)よりも誤り訂正能力の高いアルゴリズムである。たとえば、第1ECC51を利用するエラー訂正アルゴリズムは、4ビットまでのエラーを検出可能であり、且つ、2ビットまでのエラーを訂正可能なエラー訂正アルゴリズムである。これに対して、第2ECC52を利用するエラー訂正アルゴリズムは、たとえば、8ビットまでのエラーを検出可能であり、且つ、6ビットまでのエラーを訂正可能なアルゴリズムである。このため、一般には、第2ECC52のビット長は、第1ECC51のビット長より大きい。また、第1エラー訂正アルゴリズムは、第2エラー訂正アルゴリズムと比べて処理負荷の小さいアルゴリズムである。
The
ECC指定情報50は、冗長領域42に格納されているエラー訂正コードの種別を指定する情報である。つまり、冗長領域42に、第1ECC51が格納されているのか、あるいは、第2ECC52が格納されているのかを指定する情報である。図3は、データ領域41に格納されたデータに対して第1ECC51が付加されている場合の冗長領域42を示している。この場合、ECC指定情報50には、冗長領域42に第1ECC51が格納されていることを示す情報が記録されている。図4は、データ領域41に格納されたデータに対して第2ECC52が付加されている場合の冗長領域42を示している。この場合、ECC指定情報50には、冗長領域42に第2ECC52が格納されていることを示す情報が記録されている。
The
なお、本実施の形態においては、エラー訂正コードおよびECC指定情報50が、冗長領域42に格納されているが、これらのデータが、データ領域41内に格納されていてもよい。あるいは、エラー訂正コードおよびECC指定情報50が、メモリ4以外の記憶手段に格納されていてもよい。
In the present embodiment, the error correction code and the
エラー訂正部33は、各ページに格納されているデータを読み出し、誤り検出を行う。そして、データエラーを検出した場合には、誤り訂正を行う。具体的には、エラー訂正部33は、ECC指定情報50において、第1ECC51が指定されている場合には、冗長領域42から第1ECC51を読み出し、第1エラー訂正アルゴリズムを利用して、データの誤り検出を行う。そして、データエラーを検出した場合には、第1エラー訂正アルゴリズムを利用して、データの誤り訂正を行うのである。また、エラー訂正部33は、ECC指定情報50において、第2ECC52が指定されている場合には、冗長領域42から第2ECC52を読み出し、第2エラー訂正アルゴリズムを利用して、データの誤り検出を行う。そして、データエラーを検出した場合には、第2エラー訂正アルゴリズムを利用して、データの誤り訂正を行うのである。そして、第1あるいは第2のエラー訂正アルゴリズムによって訂正されたデータは、インタフェース31を介してホストシステム1に出力されるのである。
The
以上の構成に基づいて実行される本実施の形態における誤り訂正処理の内容について、図5のフローチャートを参照しながら説明する。 The contents of the error correction processing in the present embodiment executed based on the above configuration will be described with reference to the flowchart of FIG.
まず、メモリコントローラ3が、メモリ4の指定したページのデータを読み出す(ステップS11)。このとき、データ領域41に格納されたデータと合わせて、冗長領域42に格納されているECC指定情報50やエラー訂正コード(第1ECC51あるいは第2ECC52)も読み出される。
First, the
誤り訂正部33は、ECC指定情報50を参照する(ステップS12)。そして、ECC指定情報50において、第1ECC51が指定されている場合には、第1エラー訂正アルゴリズムに従い、読み出した第1ECC51を用いて、読み出しデータのエラーを検出し、エラーを検出した場合には、エラー訂正を行う(ステップS13)。そして、エラー訂正後のデータをホストシステム1に出力する。なお、第1エラー訂正アルゴリズムによって、エラーを検出しなかった場合には、そのまま読み出しデータをホストシステム1に出力するが、その処理についてはフローチャートにおいて省略している。
The
次に、エラー訂正部33は、エラービット数が閾値を超えているかどうかを判定する(ステップS14)。エラー訂正部33は、図示せぬ記憶部に、エラービット数の閾値データを格納している。たとえば、第1エラー訂正アルゴリズムが、2ビットまでのエラーを訂正可能である場合、閾値を1ビット等と設定する例が考えられる。
Next, the
そして、検出したエラービット数が閾値を超えている場合(たとえば、閾値を1ビットと設定している場合であって、エラービット数が2ビットである場合など)には、エラー訂正部33は、第2エラー訂正アルゴリズムを用いて、訂正したデータに対する第2ECC52を生成する(ステップS15)。次に、生成した第2ECC52を、読み出したデータの冗長領域42に記録する(ステップS16)。このとき、既に格納されていた第1ECC51は消去されて、新たに生成した第2ECC52が格納される。さらに、エラー訂正部33は、ECC指定情報50の書き換えを行う(ステップS17)。つまり、ECC指定情報50で指定されるECC種別が第2ECC52となるように、当該情報を更新するのである。このようにして、図3で示す状態の冗長領域42が、図4で示す状態の冗長領域42に書き換えられるのである。
When the detected number of error bits exceeds the threshold (for example, when the threshold is set to 1 bit and the number of error bits is 2 bits), the
なお、本実施の形態においては、第1ECC51を第2ECC52に置き換える場合を説明したが、第1ECC51は、そのまま格納しておき、第2ECC52を冗長領域42内の別の領域(エラー訂正コードがデータ領域41や別の記憶手段に格納されている場合にあっては、それら記憶手段内の別の領域)に格納するようにしてもよい。そして、この場合であって、第2ECC52が指定されるようECC指定情報50の書き換えを行うことにより、どちらのエラー訂正コードが適用されるかが特定されるのである。
In this embodiment, the case where the
また、ステップS14において、エラービット数が閾値を超えていないと判定された場合には、そのまま処理を終了する。つまり、読み出しデータに対するエラー訂正アルゴリズムは、そのまま第1エラー訂正アルゴリズムが利用されるのである。 If it is determined in step S14 that the number of error bits does not exceed the threshold value, the process ends as it is. That is, as the error correction algorithm for the read data, the first error correction algorithm is used as it is.
一方、ステップS12において、第2ECC52が指定されていると判定された場合、第2エラー訂正アルゴリズムに従い、読み出した第2ECC52を用いて、読み出しデータのエラーを検出し、エラーを検出した場合には、エラー訂正を行う(ステップS18)。そして、エラー訂正後のデータをホストシステム1に出力する。なお、第2エラー訂正アルゴリズムによって、エラーを検出しなかった場合には、そのまま読み出しデータをホストシステム1に出力するが、その処理についてはフローチャートにおいて省略している。
On the other hand, if it is determined in step S12 that the
このように、本実施の形態によれば、メモリ4の冗長領域42には、第1ECC51と第2ECC52のいずれかが格納されている。そして、初期段階においては、各ページのデータに対して第1ECC51が格納されている。そして、検出したエラービット数が所定の閾値を超えていた場合には、第1ECC51よりもエラー訂正能力の高い第2ECCを生成し、第1ECC51に代えて第2ECC52を冗長領域42に格納するのである。
Thus, according to the present embodiment, one of the
これにより、初期段階は、処理負荷の小さい第1エラー訂正アルゴリズムを利用し、エラーが所定の閾値を超えた時点から、エラー訂正能力の高い第2エラー訂正アルゴリズムを利用することが可能である。したがって、初期段階においては、処理負荷の小さいエラー訂正により高速な読み出しを行い、“Read Disturb”現象が発生し、読み出しデータにエラーが発生した場合にも、よりエラー訂正能力の高いエラー訂正アルゴリズムを利用し、正しく訂正されたデータをホストシステムに供給可能である。 Thereby, in the initial stage, it is possible to use the first error correction algorithm with a low processing load and use the second error correction algorithm having a high error correction capability from the time when the error exceeds a predetermined threshold. Therefore, in the initial stage, high-speed reading is performed by error correction with a small processing load, and even when the “Read Disturb” phenomenon occurs and an error occurs in the read data, an error correction algorithm with higher error correction capability is used. It can be used to supply correct corrected data to the host system.
なお、本実施の形態においては、2種類の訂正能力の異なるエラー訂正アルゴリズムを利用することとしたが、3種類以上の訂正能力の異なるエラー訂正アルゴリズムを利用するようにしてもよい。そして、エラービット数と閾値とを比較し、閾値を超えた時点で、次々に、より高い訂正能力のエラー訂正アルゴリズムに切り替えていくようにすることが可能である。 In this embodiment, two types of error correction algorithms having different correction capabilities are used. However, three or more types of error correction algorithms having different correction capabilities may be used. Then, it is possible to compare the number of error bits with a threshold value and switch to an error correction algorithm having a higher correction capability one after another when the threshold value is exceeded.
{第2の実施の形態}
次に、本発明の第2の実施の形態について説明する。図6は、第2の実施の形態に係るエラー訂正処理のフローチャートである。なお、第2の実施の形態における情報処理システムの構成は、図1で示したものと同様である。また、冗長領域42に格納される情報も、図3および図4で示したものと同様である。
{Second Embodiment}
Next, a second embodiment of the present invention will be described. FIG. 6 is a flowchart of error correction processing according to the second embodiment. Note that the configuration of the information processing system in the second embodiment is the same as that shown in FIG. The information stored in the
ステップS21〜ステップS23は、第1の実施の形態におけるステップS11〜ステップS13と同様である。つまり、読み出したデータについて、エラーが検出された場合には、第1エラー訂正アルゴリズムを用いてエラー訂正処理を行う。第1エラー訂正アルゴリズムによって、エラーを検出しなかった場合には、そのまま読み出しデータをホストシステム1に出力するが、その処理についてはフローチャートにおいて省略している。 Steps S21 to S23 are the same as steps S11 to S13 in the first embodiment. That is, when an error is detected for the read data, error correction processing is performed using the first error correction algorithm. If no error is detected by the first error correction algorithm, the read data is output to the host system 1 as it is, but this process is omitted in the flowchart.
第1の実施の形態においては、ステップS14において、エラービット数と閾値との比較を行った。これに対して、第2の実施の形態においては、閾値との比較を行うことなく、第2エラー訂正アルゴリズムへの移行処理を行う。つまり、第1エラー訂正アルゴリズムが設定されている状態で、1ビットでもエラーが発生した場合には、第2エラー訂正アルゴリズムへの移行を行うのである。 In the first embodiment, in step S14, the number of error bits is compared with a threshold value. On the other hand, in the second embodiment, the shift process to the second error correction algorithm is performed without comparing with the threshold value. That is, when an error occurs even with one bit in a state where the first error correction algorithm is set, the transition to the second error correction algorithm is performed.
ステップS24〜ステップS26は、第1の実施の形態におけるステップS15〜ステップS17と同様である。第2エラー訂正アルゴリズムに基づいて第2ECC52を生成し、冗長領域42内に、第1ECC51に代えて第2ECC52を格納するのである。また、ECC指定情報50によって第2ECC52が指定されるように、当該情報を書き換えるのである。
Steps S24 to S26 are the same as steps S15 to S17 in the first embodiment. The
第1の実施の形態と同様、第1ECC51は、そのまま格納しておき、第2ECC52を冗長領域42内の別の領域(エラー訂正コードがデータ領域41や別の記憶手段に格納されている場合にあっては、それら記憶手段内の別の領域)に格納するようにしてもよい。そして、この場合であって、第2ECC52が指定されるようECC指定情報50の書き換えを行うことにより、どちらのエラー訂正コードが適用されるかが特定されるのである。
As in the first embodiment, the
第2エラー訂正アルゴリズムに移行した後のステップS27も、第1の実施の形態におけるステップS18と同様である。つまり、エラーが発生した場合には、エラー訂正能力の高い第2エラー訂正アルゴリズムを利用してエラー訂正が行われる。第2エラー訂正アルゴリズムによって、エラーを検出しなかった場合には、そのまま読み出しデータをホストシステム1に出力するが、その処理についてはフローチャートにおいて省略している。 Step S27 after the transition to the second error correction algorithm is the same as step S18 in the first embodiment. That is, when an error occurs, error correction is performed using a second error correction algorithm having a high error correction capability. If no error is detected by the second error correction algorithm, the read data is output to the host system 1 as it is, but this process is omitted in the flowchart.
これにより、“Read Disturb”現象が発生し、読み出しデータにエラーが発生した場合にも、よりエラー訂正能力の高いエラー訂正アルゴリズムを利用し、正しく訂正されたデータをホストシステムに供給可能である。 As a result, even when the “Read Disturb” phenomenon occurs and an error occurs in the read data, it is possible to use the error correction algorithm with higher error correction capability to supply the corrected data to the host system.
なお、この実施の形態においても、エラー訂正コードおよびECC指定情報50が、データ領域41内に格納されていてもよい。あるいは、エラー訂正コードおよびECC指定情報50が、メモリ4以外の記憶手段に格納されていてもよい。
In this embodiment, the error correction code and the
{第3の実施の形態}
次に、本発明の第3の実施の形態について説明する。図7は、第3の実施の形態に係るメモリ4における冗長領域42を示す図である。図8は、第3の実施の形態に係るエラー訂正処理のフローチャートである。なお、情報処理システムの構成は、図1で示したものと同様である。
{Third embodiment}
Next, a third embodiment of the present invention will be described. FIG. 7 is a diagram showing the
図7に示すように、冗長領域42には、第1ECC51と第2ECC52の両方が格納されている。つまり、初期段階から、各ページのデータには、第1ECC51と第2ECC52とが用意され、いずれのECCについても、冗長領域42に格納するようにしているのである。ただし、ECC指定情報50において、初期段階では、第1ECC51が指定されている。そして、後で説明する条件、処理によって、ECC指定情報50が書き換えられ、ECC指定情報50により第2ECC52が指定されることになる。
As shown in FIG. 7, both the
したがって、エラー訂正部33は、ECC指定情報50を参照し、第1ECC51が指定されている場合には、冗長領域42から読み出した第1ECC51を利用してエラー訂正を行い、ECC指定情報50により第2ECC52が指定されている場合には、冗長領域42から読み出した第2ECC52を利用してエラー訂正を行うのである。
Therefore, the
なお、この実施の形態においても、エラー訂正コードおよびECC指定情報50が、冗長領域42に格納されているが、これらのデータが、データ領域41内に格納されていてもよい。あるいは、エラー訂正コードおよびECC指定情報50が、メモリ4以外の記憶手段に格納されていてもよい。
In this embodiment, the error correction code and the
図8を参照する。まず、メモリコントローラ3が、メモリ4の指定したページのデータを読み出す(ステップS31)。このとき、データ領域41に格納されたデータと合わせて、冗長領域42に格納されているECC指定情報50やエラー訂正コード(第1ECC51および第2ECC52)も読み出される。なお、ECC指定情報50に指定された情報に基づいて、第1ECC51および第2ECC52のうち、必要な情報のみを読み出すようにしてもよい。
Please refer to FIG. First, the
次に、エラー訂正部33は、ECC指定情報50を参照する(ステップS32)。そして、ECC指定情報50において、第1ECC51が指定されている場合には、第1エラー訂正アルゴリズムに従い、読み出した第1ECC51を用いて、読み出しデータのエラーを検出し、エラーを検出した場合には、エラー訂正を行う(ステップS33)。そして、エラー訂正後のデータをホストシステム1に出力する。なお、第1エラー訂正アルゴリズムによって、エラーを検出しなかった場合には、そのまま読み出しデータをホストシステム1に出力するが、その処理についてはフローチャートにおいて省略している。
Next, the
次に、エラー訂正部33は、エラービット数が閾値を超えているかどうかを判定する(ステップS34)。エラー訂正部33は、図示せぬ記憶部に、エラービット数の閾値データを格納している。第1の実施の形態で例示した場合と同様、たとえば、第1エラー訂正アルゴリズムが、2ビットまでのエラーを訂正可能である場合、閾値を1ビットと設定する例が考えられる。
Next, the
そして、検出したエラービット数が閾値を超えている場合には、エラー訂正部33は、ECC指定情報50の書き換えを行う(ステップS35)。つまり、ECC指定情報50によって第2ECC52が指定されるように、当該情報を更新するのである。
If the number of detected error bits exceeds the threshold value, the
また、ステップS34において、エラービット数が閾値を超えていないと判定された場合には、そのまま処理を終了する。つまり、読み出しデータに対するエラー訂正アルゴリズムは、そのまま第1エラー訂正アルゴリズムが利用されるのである。 If it is determined in step S34 that the number of error bits does not exceed the threshold value, the process ends as it is. That is, as the error correction algorithm for the read data, the first error correction algorithm is used as it is.
一方、ステップS32において、第2ECC52が指定されていると判定された場合、第2エラー訂正アルゴリズムに従い、読み出した第2ECC52を用いて、読み出しデータのエラーを検出し、エラーを検出した場合には、エラー訂正を行う(ステップS36)。そして、エラー訂正後のデータをホストシステム1に出力する。なお、第2エラー訂正アルゴリズムによって、エラーを検出しなかった場合には、そのまま読み出しデータをホストシステム1に出力するが、その処理についてはフローチャートにおいて省略している。
On the other hand, if it is determined in step S32 that the
このように、本実施の形態によれば、メモリ4の冗長領域42には、第1ECC51および第2ECC52の両方の情報が格納されている。そして、初期段階においては、各ページのデータに対して第1ECC51が利用されるように、ECC指定情報50が設定されている。そして、検出したエラービット数が所定の閾値を超えていた場合には、第1ECC51よりもエラー訂正能力の高い第2ECC52を利用するように、ECC指定情報50を書き換えるのである。
Thus, according to the present embodiment, the
これにより、初期段階は、処理負荷の小さい第1エラー訂正アルゴリズムを利用し、エラーが所定の閾値を超えた時点から、エラー訂正能力の高い第2エラー訂正アルゴリズムを利用することが可能である。したがって、初期段階においては、処理負荷の小さいエラー訂正により高速な読み出しを行い、“Read Disturb”現象が発生し、読み出しデータにエラーが発生した場合にも、よりエラー訂正能力の高いエラー訂正アルゴリズムを利用し、正しく訂正されたデータをホストシステム1に供給可能である。また、この実施の形態においては、あらかじめ、第1ECC51と第2ECC52が生成されてメモリ4内に格納されているので、第2エラー訂正アルゴリズムに移行する場合にも、第2ECC52を生成する処理を行う必要がない。
Thereby, in the initial stage, it is possible to use the first error correction algorithm with a low processing load and use the second error correction algorithm having a high error correction capability from the time when the error exceeds a predetermined threshold. Therefore, in the initial stage, high-speed reading is performed by error correction with a small processing load, and even when the “Read Disturb” phenomenon occurs and an error occurs in the read data, an error correction algorithm with higher error correction capability is used. It is possible to supply the host system 1 with correctly corrected data. Further, in this embodiment, since the
なお、本実施の形態においては、2種類の訂正能力の異なるエラー訂正アルゴリズムを利用することとしたが、3種類以上の訂正能力の異なるエラー訂正アルゴリズムを利用するようにしてもよい。そして、エラービット数と閾値とを比較し、閾値を超えた時点で、次々に、より高い訂正能力のエラー訂正アルゴリズムに切り替えていくようにすることができる。 In this embodiment, two types of error correction algorithms having different correction capabilities are used. However, three or more types of error correction algorithms having different correction capabilities may be used. Then, the number of error bits and the threshold value are compared, and when the threshold value is exceeded, it is possible to switch to an error correction algorithm having a higher correction capability one after another.
{第4の実施の形態}
次に、本発明の第4の実施の形態について説明する。図9は、第4の実施の形態に係るエラー訂正処理のフローチャートである。なお、第4の実施の形態における情報処理システムの構成は、図1で示したものと同様である。また、冗長領域42に格納される情報については、第3の実施の形態における図7で示したものと同様である。
{Fourth embodiment}
Next, a fourth embodiment of the present invention will be described. FIG. 9 is a flowchart of error correction processing according to the fourth embodiment. The configuration of the information processing system in the fourth embodiment is the same as that shown in FIG. Further, the information stored in the
ステップS41〜ステップS43は、第3の実施の形態におけるステップS31〜ステップS33と同様である。つまり、読み出したデータについて、エラーが検出された場合には、第1エラー訂正アルゴリズムを用いてエラー訂正処理を行う。第1エラー訂正アルゴリズムによって、エラーを検出しなかった場合には、そのまま読み出しデータをホストシステム1に出力するが、その処理についてはフローチャートにおいて省略している。 Steps S41 to S43 are the same as steps S31 to S33 in the third embodiment. That is, when an error is detected for the read data, error correction processing is performed using the first error correction algorithm. If no error is detected by the first error correction algorithm, the read data is output to the host system 1 as it is, but this process is omitted in the flowchart.
第3の実施の形態においては、ステップS34において、エラービット数と閾値との比較を行った。これに対して、第4の実施の形態においては、閾値との比較を行うことなく、第2エラー訂正アルゴリズムへの移行処理を行う。つまり、第1エラー訂正アルゴリズムが設定されている状態で、1ビットでもエラーが発生した場合には、第2エラー訂正アルゴリズムへの移行を行うのである。 In the third embodiment, the number of error bits is compared with a threshold value in step S34. On the other hand, in the fourth embodiment, the transition process to the second error correction algorithm is performed without comparing with the threshold value. That is, when an error occurs even with one bit in a state where the first error correction algorithm is set, the transition to the second error correction algorithm is performed.
ステップS44は、第3の実施の形態におけるステップS35と同様である。エラー訂正部33は、ECC指定情報50が第2ECC52を指定するよう情報を書き換えるのである。
Step S44 is the same as step S35 in the third embodiment. The
第2エラー訂正アルゴリズムに移行した後のステップS45も、第3の実施の形態におけるステップS36と同様である。つまり、エラーが発生した場合には、エラー訂正能力の高い第2エラー訂正アルゴリズムを利用してエラー訂正が行われる。第2エラー訂正アルゴリズムによって、エラーを検出しなかった場合には、そのまま読み出しデータをホストシステム1に出力するが、その処理についてはフローチャートにおいて省略している。 Step S45 after the transition to the second error correction algorithm is the same as step S36 in the third embodiment. That is, when an error occurs, error correction is performed using a second error correction algorithm having a high error correction capability. If no error is detected by the second error correction algorithm, the read data is output to the host system 1 as it is, but this process is omitted in the flowchart.
これにより、“Read Disturb”現象が発生し、読み出しデータにエラーが発生した場合にも、よりエラー訂正能力の高いエラー訂正アルゴリズムを利用し、正しく訂正されたデータをホストシステム1に供給可能である。 As a result, even when the “Read Disturb” phenomenon occurs and an error occurs in the read data, it is possible to use the error correction algorithm with higher error correction capability to supply the corrected data to the host system 1. .
なお、この実施の形態においても、エラー訂正コードおよびECC指定情報50が、データ領域41内に格納されていてもよい。あるいは、エラー訂正コードおよびECC指定情報50が、メモリ4以外の記憶手段に格納されていてもよい。
In this embodiment, the error correction code and the
{第5の実施の形態}
第1〜第4の実施の形態においては、初期段階においては、第1エラー訂正アルゴリズムを利用し、エラーが発生した後に、より訂正能力の高い第2エラー訂正アルゴリズムを利用しようというものであった。
{Fifth embodiment}
In the first to fourth embodiments, in the initial stage, the first error correction algorithm is used, and after an error occurs, the second error correction algorithm having a higher correction capability is used. .
これに対して、第5の実施の形態においては、固定的に、特定のデータあるいは特定の領域について、訂正能力の高い第2エラー訂正アルゴリズムを利用するものである。 On the other hand, in the fifth embodiment, the second error correction algorithm having a high correction capability is used for specific data or a specific area in a fixed manner.
図10は、第5の実施の形態に係るメモリ4を示す図である。冗長領域42は、第1の実施の形態における図3および図4と同様、第1ECC51あるいは第2ECC52が格納されることになる。図10においては、冗長領域42にいずれのECCが格納されているかを示している。
FIG. 10 is a diagram illustrating the
この図の例では、ページ0、ページ1、ページ2などの領域については、冗長領域42に第1ECC51が格納されている。そして、ページ50およびページ51については、冗長領域42に、第2ECC52が格納されている。そして、ページ0、ページ1、ページ2などについては、初期段階から固定的に、第1エラー訂正アルゴリズムが利用され、ページ50、ページ51については、初期段階から固定的に、第2エラー訂正アルゴリズムが利用されるのである。
In the example of this figure, the
たとえば、プログラムやデータの特性上、予め繰り返し読み出される可能性が高いと想定されるデータに関しては、第2ECC52を付加するようにすれば、効果的である。あるいは、メモリ4の物理的構造上、“Read Disturb”現象が発生し易いと想定されるページ領域については、第2ECC52を冗長領域42に格納すれば効果的である。
For example, it is effective to add the
また、重要度の高いデータに関しては、第2ECCを付加するようにすれば、効果的である。重要度の高いデータとは、エラーが発生した場合に、アプリケーションなどの実行を妨げるデータである。あるいは、重要度の高いデータとは、エラーが発生した場合に、アプリケーションの実行に大きな影響を及ぼすデータである。たとえば、プログラム本体などが該当する。たとえば、アプリケーションプログラムによっては、画像データや音声データにエラーが発生しても、アプリケーションの実行には大きな影響を与えないが、プログラム本体にエラーが発生すると、実行が不可能になる。このような場合に、プログラム本体を重要度の高いデータとして扱うのである。 For data with high importance, it is effective to add the second ECC. High importance data is data that hinders the execution of an application or the like when an error occurs. Alternatively, highly important data is data that greatly affects the execution of an application when an error occurs. For example, the program main body is applicable. For example, depending on the application program, even if an error occurs in image data or audio data, the execution of the application is not greatly affected. In such a case, the program body is handled as highly important data.
このように、“Read Disturb”現象が発生しやすい領域、あるいは重要度の高いデータが格納される領域を特定し、当該領域のみについて、エラー訂正能力の高いECCを利用することで、冗長符号の無駄をなくすことができる。また、その他の領域については、処理負荷の小さいエラー訂正アルゴリズムを固定的に利用するので、高速な読み出しを行うことが可能である。 As described above, an area where the “Read Disturb” phenomenon is likely to occur or an area where highly important data is stored is specified, and an ECC having a high error correction capability is used only for the area, so that the redundant code can be generated. Waste can be eliminated. For other areas, an error correction algorithm with a small processing load is fixedly used, so that high-speed reading can be performed.
あるいは、冗長領域42に、第1ECC51と第2ECC52の両方が格納されていてもよい。この場合にも、たとえば、プログラムやデータの特性上、予め繰り返し読み出される可能性が高いと想定されるデータに関しては、ECC指定情報50により、第2ECC52が指定されるように設定するのである。あるいは、メモリ4の物理的構造上、“Read Disturb”現象が発生し易いと想定されるページ領域については、ECC指定情報50により、第2ECC52が指定されるように設定するのである。同様に、重要度の高いデータに関しては、ECC指定情報50により、第2ECC52が指定されるように設定するのである。
Alternatively, both the
この実施の形態においても、エラー訂正コードおよびECC指定情報50が、冗長領域42に格納されているが、これらのデータが、データ領域41内に格納されていてもよい。あるいは、エラー訂正コードおよびECC指定情報50が、メモリ4以外の記憶手段に格納されていてもよい。
Also in this embodiment, the error correction code and the
また、上記の各実施の形態で説明したエラー訂正方法を複合的に利用するようにしてもよい。たとえば、第1の実施の形態と第5の実施の形態を複合的に利用する方法が考えられる。具体的には、特定の領域については、初期段階から第2ECC52を格納する第5の実施の形態を適用させ、その他の領域については、エラーの発生に応じて第1ECC51から第2ECC52への書き換えを行う第1の実施の形態を適用させるのである。
Further, the error correction methods described in the above embodiments may be used in combination. For example, a method of using the first embodiment and the fifth embodiment in combination is conceivable. Specifically, the fifth embodiment in which the
{第6の実施の形態}
第1の実施の形態および第2の実施の形態においては、エラービット数が所定の閾値を超えたとき、あるいはエラーが発生したときに、第2ECC52を生成して、冗長領域42等に格納するようにした。この他の実施の形態として、読み出し回数に応じて第2ECC52を生成するようにしてもよい。
{Sixth embodiment}
In the first embodiment and the second embodiment, when the number of error bits exceeds a predetermined threshold value or when an error occurs, the
つまり、メモリコントローラ3は、メモリ4の各記憶領域(例えばページ単位)の読み出し回数をカウントするのである。そして、読み出し回数が所定の閾値を超えた領域に格納されているデータについては、第2ECC52を生成して、冗長領域42等に格納するのである。そして、ECC指定情報50を書き換えて、第2ECC52が適用されるようにするのである。
That is, the
{第7の実施の形態}
第3の実施の形態および第4の実施の形態においては、エラービット数が所定の閾値を超えたとき、あるいはエラーが発生したときに、第2ECC52を指定するよう、ECC指定情報50を書き換えるようにした。この他の実施の形態として、読み出し回数に応じてECC指定情報50を書き換えるようにしてもよい。
{Seventh embodiment}
In the third embodiment and the fourth embodiment, the
つまり、メモリコントローラ3は、メモリ4の各記憶領域(例えばページ単位)の読み出し回数をカウントするのである。そして、読み出し回数が所定の閾値を超えた領域に格納されているデータについては、第2ECC52を指定するようECC指定情報50を書き換えるのである。
That is, the
{変形例}
上記第1、第2、第6の実施の形態においては、第2ECC52を生成して格納したときに、ECC指定情報50を書き換えるようにした。しかし、第2ECC52を生成した直後に、ECC指定情報50を書き換える以外に、別のタイミングで書き換えるようにしてもよい。
{Modifications}
In the first, second, and sixth embodiments, the
たとえば、アプリケーションの実行中にはECC指定情報50を書き換えることは行わず、電源OFF時のアプリケーションに関するバックアップ中に書き換えを行う。あるいは、一定周期、アイドル中(アプリケーションによるメモリアクセスがないタイミング)、スリープ中、充電中、電源ON時などに書き換えを行うようにしてもよい。
For example, the
ただし、電源ON時や、充電中にECC指定情報50を書き換える場合は、一度電源がOFFされるので、書き換えるECC指定情報50に関する情報を、一旦、別の不揮発性メモリに記憶しておくようにすればよい。
However, when the
また、上記第3、第4、第7の実施の形態においては、エラービット数が閾値を超えているとき、エラーが発生したとき、または、読み出し回数が所定の閾値を超えているときに、ECC指定情報50を書き換えるようにした。しかし、これら条件に適合すると判定された直後ではなく、別のタイミングでECC指定情報50を書き換えるようにしてもよい。
In the third, fourth, and seventh embodiments, when the number of error bits exceeds a threshold, when an error occurs, or when the number of readings exceeds a predetermined threshold, The
たとえば、電源OFF時のアプリケーションに関するバックアップ中、一定周期、アイドル中、スリープ中、充電中、電源ON時などに書き換えを行うようにしてもよい。 For example, rewriting may be performed during backup related to an application when the power is turned off, during a certain period, during idling, during sleep, during charging, or when the power is turned on.
ただし、電源ON時や、充電中にECC指定情報50を書き換える場合は、一度電源がOFFされるので、書き換えるECC指定情報50に関する情報を、一旦、別の不揮発性メモリに記憶しておくようにすればよい。
However, when the
1 ホストシステム
2 メモリモジュール
3 メモリコントローラ
4 メモリ
41 データ領域
42 冗長領域
50 ECC指定情報
51 第1ECC
52 第2ECC
1 Host system 2
52 2nd ECC
Claims (20)
前記不揮発性半導体メモリに対するアクセスを制御するメモリコントローラと、
を備え、
前記メモリコントローラは、第1のエラー訂正コードおよび第2のエラー訂正コードを利用した誤り訂正処理を実行することが可能であり、
前記メモリコントローラは、
前記不揮発性半導体メモリから読み出したデータに対して、第1のエラー訂正コードあるいは第2のエラー訂正コードを利用して誤り訂正処理を実行する手段、
を備えることを特徴とする半導体メモリシステム。 A rewritable nonvolatile semiconductor memory storing data to which the first error correction code or the second error correction code having higher correction capability than the first error correction code is stored;
A memory controller for controlling access to the nonvolatile semiconductor memory;
With
The memory controller can execute an error correction process using the first error correction code and the second error correction code,
The memory controller is
Means for performing error correction processing on the data read from the nonvolatile semiconductor memory using the first error correction code or the second error correction code;
A semiconductor memory system comprising:
前記不揮発性半導体メモリに格納されたデータを訂正するための第1のエラー訂正コードあるいは第1のエラー訂正コードより訂正能力の高い第2のエラー訂正コードが格納される訂正コード記憶手段と、
前記不揮発性半導体メモリに対するアクセスを制御するメモリコントローラと、
を備え、
前記メモリコントローラは、第1のエラー訂正コードおよび第2のエラー訂正コードを利用した誤り訂正処理を実行することが可能であり、
前記メモリコントローラは、
前記不揮発性半導体メモリから読み出したデータに対して、第1のエラー訂正コードあるいは第2のエラー訂正コードを利用して誤り訂正処理を実行する手段、
を備えることを特徴とする半導体メモリシステム。 A rewritable nonvolatile semiconductor memory in which data is stored;
Correction code storage means for storing a first error correction code for correcting data stored in the nonvolatile semiconductor memory or a second error correction code having a higher correction capability than the first error correction code;
A memory controller for controlling access to the nonvolatile semiconductor memory;
With
The memory controller can execute an error correction process using the first error correction code and the second error correction code,
The memory controller is
Means for performing error correction processing on the data read from the nonvolatile semiconductor memory using the first error correction code or the second error correction code;
A semiconductor memory system comprising:
前記メモリコントローラは、さらに、
データに対して第1のエラー訂正コードを利用して誤り訂正を行った後、読み出しデータに係る第2のエラー訂正コードを生成し、前記不揮発性半導体メモリに、生成した第2のエラー訂正コードを格納するエラー訂正コード格納手段、
を備えることを特徴とする半導体メモリシステム。 The semiconductor memory system according to claim 1,
The memory controller further includes:
After performing error correction on the data using the first error correction code, a second error correction code related to the read data is generated, and the generated second error correction code is stored in the nonvolatile semiconductor memory. Error correction code storage means for storing,
A semiconductor memory system comprising:
前記メモリコントローラは、さらに、
データに対して第1のエラー訂正コードを利用して誤り訂正を行った後、読み出しデータに係る第2のエラー訂正コードを生成し、前記訂正コード記憶手段に、生成した第2のエラー訂正コードを格納するエラー訂正コード格納手段、
を備えることを特徴とする半導体メモリシステム。 The semiconductor memory system according to claim 2.
The memory controller further includes:
After error correction is performed on the data using the first error correction code, a second error correction code related to the read data is generated, and the generated second error correction code is stored in the correction code storage means. Error correction code storage means for storing
A semiconductor memory system comprising:
前記訂正コード格納手段は、読み出しデータに関してエラーが発生したとき、エラービットの数が所定の閾値を超えている場合に、第2のエラー訂正コードを格納することを特徴とする半導体メモリシステム。 The semiconductor memory system according to claim 3 or 4,
The correction code storage means stores a second error correction code when an error occurs in the read data and the number of error bits exceeds a predetermined threshold.
前記訂正コード格納手段は、読み出しデータに関してエラーが発生したとき、エラービットの数に関わらず、第2のエラー訂正コードを格納することを特徴とする半導体メモリシステム。 The semiconductor memory system according to claim 3 or 4,
The correction code storage means stores a second error correction code regardless of the number of error bits when an error occurs in the read data.
前記メモリコントローラは、さらに、
前記不揮発性半導体メモリからからデータを読み出したとき、その領域の読み出し回数が、所定の回数を超えていた場合は、読み出しデータに係る第2のエラー訂正コードを生成し、前記不揮発性半導体メモリに、生成した第2のエラー訂正コードを格納するエラー訂正コード格納手段、
を備えることを特徴とする半導体メモリシステム。 The semiconductor memory system according to claim 1,
The memory controller further includes:
When data is read from the nonvolatile semiconductor memory, if the number of times the area has been read exceeds a predetermined number, a second error correction code related to the read data is generated, and the nonvolatile semiconductor memory Error correction code storage means for storing the generated second error correction code,
A semiconductor memory system comprising:
前記メモリコントローラは、さらに、
前記不揮発性半導体メモリからからデータを読み出したとき、その領域の読み出し回数が、所定の回数を超えていた場合は、読み出しデータに係る第2のエラー訂正コードを生成し、前記訂正コード記憶手段に、生成した第2のエラー訂正コードを格納するエラー訂正コード格納手段、
を備えることを特徴とする半導体メモリシステム。 The semiconductor memory system according to claim 2.
The memory controller further includes:
When data is read from the nonvolatile semiconductor memory, if the number of times the area has been read exceeds a predetermined number, a second error correction code related to the read data is generated and stored in the correction code storage means Error correction code storage means for storing the generated second error correction code,
A semiconductor memory system comprising:
前記不揮発性半導体メモリには、各記憶領域のデータについて第1のエラー訂正コードを使用するのか、第2のエラー訂正コードを使用するのかを指定する指定情報が記憶されていることを特徴とする半導体メモリシステム。 The semiconductor memory system according to claim 1,
The nonvolatile semiconductor memory stores designation information for designating whether to use a first error correction code or a second error correction code for data in each storage area. Semiconductor memory system.
前記訂正コード記憶手段には、各記憶領域のデータについて第1のエラー訂正コードを使用するのか、第2のエラー訂正コードを使用するのかを指定する指定情報が記憶されていることを特徴とする半導体メモリシステム。 The semiconductor memory system according to claim 2.
The correction code storage means stores designation information for designating whether to use a first error correction code or a second error correction code for data in each storage area. Semiconductor memory system.
前記訂正コード格納手段は、第2のエラー訂正コードを格納した後、前記指定情報についても、第2のエラー訂正コードを指定する情報に書き換えることを特徴とする半導体メモリシステム。 The semiconductor memory system according to claim 9 or 10,
The correction code storage means stores the second error correction code, and then rewrites the designation information to information designating the second error correction code.
前記不揮発性半導体メモリに対するアクセスを制御するメモリコントローラと、
を備え、
前記不揮発性半導体メモリには、各記憶領域のデータについて第1のエラー訂正コードが適用されているのか、第2のエラー訂正コードが適用されているのかを指定する指定情報が記憶されており、
前記メモリコントローラは、第1のエラー訂正コードおよび第2のエラー訂正コードを利用した誤り訂正処理を実行することが可能であり、
前記メモリコントローラは、
前記不揮発性半導体メモリから読み出したデータに対して、前記指定情報で指定されている第1のエラー訂正コードあるいは第2のエラー訂正コードを利用して誤り訂正処理を実行する手段、
を備えることを特徴とする半導体メモリシステム。 The rewritable nonvolatile semiconductor memory in which data to which a first error correction code and a second error correction code having a higher correction capability than the first error correction code are added is stored;
A memory controller for controlling access to the nonvolatile semiconductor memory;
With
In the nonvolatile semiconductor memory, designation information for designating whether the first error correction code is applied to the data in each storage area or the second error correction code is applied is stored.
The memory controller can execute an error correction process using the first error correction code and the second error correction code,
The memory controller is
Means for executing an error correction process on the data read from the nonvolatile semiconductor memory using the first error correction code or the second error correction code specified by the specification information;
A semiconductor memory system comprising:
前記不揮発性半導体メモリに格納されたデータを訂正するための第1のエラー訂正コードおよび第1のエラー訂正コードより訂正能力の高い第2のエラー訂正コードが格納される訂正コード記憶手段と、
前記不揮発性半導体メモリに対するアクセスを制御するメモリコントローラと、
を備え、
前記訂正コード記憶手段には、各記憶領域のデータについて第1のエラー訂正コードが適用されているのか、第2のエラー訂正コードが適用されているのかを指定する指定情報が記憶されており、
前記メモリコントローラは、第1のエラー訂正コードおよび第2のエラー訂正コードを利用した誤り訂正処理を実行することが可能であり、
前記メモリコントローラは、
前記不揮発性半導体メモリから読み出したデータに対して、前記指定情報で指定されている第1のエラー訂正コードあるいは第2のエラー訂正コードを利用して誤り訂正処理を実行する手段、
を備えることを特徴とする半導体メモリシステム。 A rewritable nonvolatile semiconductor memory in which data is stored;
Correction code storage means for storing a first error correction code for correcting data stored in the nonvolatile semiconductor memory and a second error correction code having a higher correction capability than the first error correction code;
A memory controller for controlling access to the nonvolatile semiconductor memory;
With
The correction code storage means stores designation information for designating whether the first error correction code or the second error correction code is applied to the data in each storage area,
The memory controller can execute an error correction process using the first error correction code and the second error correction code,
The memory controller is
Means for executing an error correction process on the data read from the nonvolatile semiconductor memory using the first error correction code or the second error correction code specified by the specification information;
A semiconductor memory system comprising:
読み出しデータに対して第1のエラー訂正コードを利用して誤り訂正を行った後、当該読み出しデータに関して第2のエラー訂正コードが適用されるよう前記指定情報を書き換える指定情報変更手段、
を備えることを特徴とする半導体メモリシステム。 14. The semiconductor memory system according to claim 12, further comprising:
Designation information changing means for rewriting the designation information so that the second error correction code is applied to the read data after performing error correction on the read data using the first error correction code;
A semiconductor memory system comprising:
前記指定情報変更手段は、読み出しデータに関してエラーが発生した場合であって、エラービットの数が所定の閾値を超えている場合に、前記指定情報を書き換えることを特徴とする半導体メモリシステム。 15. The semiconductor memory system according to claim 14, wherein
The specified information changing means rewrites the specified information when an error occurs with respect to read data and the number of error bits exceeds a predetermined threshold.
前記指定情報変更手段は、読み出しデータに関してエラーが発生した場合、エラービットの数に関わらず、前記指定情報を書き換えることを特徴とする半導体メモリシステム。 15. The semiconductor memory system according to claim 14, wherein
The specified information changing means rewrites the specified information regardless of the number of error bits when an error occurs in the read data.
前記メモリコントローラは、さらに、
前記不揮発性半導体メモリからデータを読み出したとき、その領域の読み出し回数が、所定の回数を超えていた場合は、当該読み出しデータに関して第2のエラー訂正コードが適用されるよう前記指定情報を書き換える指定情報変更手段、
を備えることを特徴とする半導体メモリシステム。 The semiconductor memory system according to claim 12 or 13,
The memory controller further includes:
When the data is read from the non-volatile semiconductor memory, if the number of times the area has been read exceeds a predetermined number, the designation information is rewritten so that the second error correction code is applied to the read data. Information change means,
A semiconductor memory system comprising:
前記不揮発性半導体メモリに記憶されるデータの中で、読み出しアクセスが多数発生すると想定されたデータに関しては、第2のエラー訂正コードが使用されることを特徴とする半導体メモリシステム。 The semiconductor memory system according to any one of claims 1, 2, 12, and 13,
2. A semiconductor memory system, wherein a second error correction code is used for data that is assumed to have a large number of read accesses among data stored in the nonvolatile semiconductor memory.
前記不揮発性半導体メモリの記憶領域の中で、読み出しエラーが発生すると想定された記憶領域に格納されるデータに関しては、第2のエラー訂正コードが使用されることを特徴とする半導体メモリシステム。 The semiconductor memory system according to any one of claims 1, 2, 12, and 13,
A semiconductor memory system, wherein a second error correction code is used for data stored in a storage area in which a read error is assumed to occur in the storage area of the nonvolatile semiconductor memory.
前記不揮発性半導体メモリに記憶されるデータの中で、重要度の高いデータに関しては、第2のエラー訂正コードが使用されることを特徴とする半導体メモリシステム。 The semiconductor memory system according to any one of claims 1, 2, 12, and 13,
A semiconductor memory system characterized in that a second error correction code is used for data of high importance among data stored in the nonvolatile semiconductor memory.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2007028170A JP4925301B2 (en) | 2007-02-07 | 2007-02-07 | Semiconductor memory system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2007028170A JP4925301B2 (en) | 2007-02-07 | 2007-02-07 | Semiconductor memory system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2008192054A true JP2008192054A (en) | 2008-08-21 |
| JP4925301B2 JP4925301B2 (en) | 2012-04-25 |
Family
ID=39752077
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2007028170A Expired - Fee Related JP4925301B2 (en) | 2007-02-07 | 2007-02-07 | Semiconductor memory system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4925301B2 (en) |
Cited By (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009042911A (en) * | 2007-08-07 | 2009-02-26 | Mega Chips Corp | Memory access system |
| JP2010237822A (en) * | 2009-03-30 | 2010-10-21 | Toshiba Corp | Memory controller and semiconductor memory device |
| JP2011081776A (en) * | 2009-09-11 | 2011-04-21 | Sony Corp | Nonvolatile memory apparatus, memory controller, and memory system |
| JP2011233207A (en) * | 2010-04-28 | 2011-11-17 | Univ Of Tokyo | Data input/output control device and semiconductor memory system |
| JP2012094132A (en) * | 2010-10-01 | 2012-05-17 | Siglead Inc | Non-volatile semiconductor memory device and data error correction method |
| JP2012198878A (en) * | 2011-03-21 | 2012-10-18 | Denso Corp | Refresh operation start method and system for semiconductor nonvolatile memory device |
| JP2013003656A (en) * | 2011-06-13 | 2013-01-07 | Mega Chips Corp | Memory controller |
| US8423878B2 (en) | 2009-05-28 | 2013-04-16 | Samsung Electronics Co., Ltd. | Memory controller and memory system including the same having interface controllers generating parity bits |
| JP2013546039A (en) * | 2010-09-29 | 2013-12-26 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Decoding in solid state memory devices |
| JP2016066236A (en) * | 2014-09-25 | 2016-04-28 | 日立オートモティブシステムズ株式会社 | Embedded control unit |
| JP2017027440A (en) * | 2015-07-24 | 2017-02-02 | ソニー株式会社 | Encoding device, memory system, communication system, and encoding method |
| JP2018525736A (en) * | 2015-07-28 | 2018-09-06 | 華為技術有限公司Huawei Technologies Co.,Ltd. | Dynamic coding algorithm for intelligent coding memory system |
| KR20180123426A (en) * | 2017-05-08 | 2018-11-16 | 삼성전자주식회사 | Coding mechanism including morphable ecc encoder/decoder for dimm over ddr channel, and method of thereof |
| JP2019057055A (en) * | 2017-09-20 | 2019-04-11 | 東芝メモリ株式会社 | Memory system |
| US10437480B2 (en) | 2015-12-01 | 2019-10-08 | Futurewei Technologies, Inc. | Intelligent coded memory architecture with enhanced access scheduler |
| CN114360623A (en) * | 2021-12-27 | 2022-04-15 | 海光信息技术股份有限公司 | Method for memory error correction, memory controller and computer system |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116386708A (en) | 2022-01-03 | 2023-07-04 | 三星电子株式会社 | Storage device and method of operation thereof |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH06187248A (en) * | 1992-12-16 | 1994-07-08 | Nec Corp | Data error detection and correction control circuit |
| JPH0816488A (en) * | 1994-06-29 | 1996-01-19 | Nec Corp | Electronic disk device |
| JP2004164634A (en) * | 2002-10-28 | 2004-06-10 | Sandisk Corp | Hybrid implementation for error correction code in non-volatile memory systems |
| JP2005216301A (en) * | 2004-01-29 | 2005-08-11 | Hewlett-Packard Development Co Lp | System constituting solid storage device with error correction code, and method |
-
2007
- 2007-02-07 JP JP2007028170A patent/JP4925301B2/en not_active Expired - Fee Related
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH06187248A (en) * | 1992-12-16 | 1994-07-08 | Nec Corp | Data error detection and correction control circuit |
| JPH0816488A (en) * | 1994-06-29 | 1996-01-19 | Nec Corp | Electronic disk device |
| JP2004164634A (en) * | 2002-10-28 | 2004-06-10 | Sandisk Corp | Hybrid implementation for error correction code in non-volatile memory systems |
| JP2005216301A (en) * | 2004-01-29 | 2005-08-11 | Hewlett-Packard Development Co Lp | System constituting solid storage device with error correction code, and method |
Cited By (24)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009042911A (en) * | 2007-08-07 | 2009-02-26 | Mega Chips Corp | Memory access system |
| JP2010237822A (en) * | 2009-03-30 | 2010-10-21 | Toshiba Corp | Memory controller and semiconductor memory device |
| US8423878B2 (en) | 2009-05-28 | 2013-04-16 | Samsung Electronics Co., Ltd. | Memory controller and memory system including the same having interface controllers generating parity bits |
| JP2011081776A (en) * | 2009-09-11 | 2011-04-21 | Sony Corp | Nonvolatile memory apparatus, memory controller, and memory system |
| US8438457B2 (en) | 2009-09-11 | 2013-05-07 | Sony Corporation | Nonvolatile memory apparatus, memory controller, and memory system |
| JP2011233207A (en) * | 2010-04-28 | 2011-11-17 | Univ Of Tokyo | Data input/output control device and semiconductor memory system |
| JP2013546039A (en) * | 2010-09-29 | 2013-12-26 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Decoding in solid state memory devices |
| US9176814B2 (en) | 2010-09-29 | 2015-11-03 | International Business Machines Corporation | Decoding in solid state memory devices |
| JP2012094132A (en) * | 2010-10-01 | 2012-05-17 | Siglead Inc | Non-volatile semiconductor memory device and data error correction method |
| JP2012198878A (en) * | 2011-03-21 | 2012-10-18 | Denso Corp | Refresh operation start method and system for semiconductor nonvolatile memory device |
| JP2013003656A (en) * | 2011-06-13 | 2013-01-07 | Mega Chips Corp | Memory controller |
| US9817711B2 (en) | 2011-06-13 | 2017-11-14 | Megachips Corporation | Memory controller |
| US8949690B2 (en) | 2011-06-13 | 2015-02-03 | Megachips Corporation | Memory controller |
| JP2016066236A (en) * | 2014-09-25 | 2016-04-28 | 日立オートモティブシステムズ株式会社 | Embedded control unit |
| JP2017027440A (en) * | 2015-07-24 | 2017-02-02 | ソニー株式会社 | Encoding device, memory system, communication system, and encoding method |
| JP2018525736A (en) * | 2015-07-28 | 2018-09-06 | 華為技術有限公司Huawei Technologies Co.,Ltd. | Dynamic coding algorithm for intelligent coding memory system |
| US10437480B2 (en) | 2015-12-01 | 2019-10-08 | Futurewei Technologies, Inc. | Intelligent coded memory architecture with enhanced access scheduler |
| KR20180123426A (en) * | 2017-05-08 | 2018-11-16 | 삼성전자주식회사 | Coding mechanism including morphable ecc encoder/decoder for dimm over ddr channel, and method of thereof |
| JP2018190416A (en) * | 2017-05-08 | 2018-11-29 | 三星電子株式会社Samsung Electronics Co.,Ltd. | Coding mechanism and method |
| KR102421048B1 (en) | 2017-05-08 | 2022-07-14 | 삼성전자주식회사 | Coding mechanism including morphable ecc encoder/decoder for dimm over ddr channel, and method of thereof |
| JP7231989B2 (en) | 2017-05-08 | 2023-03-02 | 三星電子株式会社 | Coding mechanism and method |
| JP2019057055A (en) * | 2017-09-20 | 2019-04-11 | 東芝メモリ株式会社 | Memory system |
| US11336305B2 (en) | 2017-09-20 | 2022-05-17 | Kioxia Corporation | Memory system |
| CN114360623A (en) * | 2021-12-27 | 2022-04-15 | 海光信息技术股份有限公司 | Method for memory error correction, memory controller and computer system |
Also Published As
| Publication number | Publication date |
|---|---|
| JP4925301B2 (en) | 2012-04-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4925301B2 (en) | Semiconductor memory system | |
| JP5137002B2 (en) | Memory controller | |
| JP5661227B2 (en) | Memory controller | |
| US8452913B2 (en) | Semiconductor memory device and method of processing data for erase operation of semiconductor memory device | |
| JP5028577B2 (en) | Memory control method and memory system | |
| JP5162763B2 (en) | Memory access system | |
| US20180114570A1 (en) | Data Storage Device and Data Writing Method Thereof | |
| JP2008198310A (en) | Method for repairing bit error and information processing system | |
| JP6744950B1 (en) | Semiconductor device and continuous reading method | |
| JPWO2009004674A1 (en) | Storage device, disk device, write determination method, control device | |
| JP5592478B2 (en) | Nonvolatile storage device and memory controller | |
| JP2020086739A (en) | Memory controller and flash memory system including the same | |
| KR100967026B1 (en) | Non volatile memory device and cache reading method thereof | |
| JP2008251154A (en) | Nonvolatile semiconductor memory device | |
| JP4177360B2 (en) | Memory controller, flash memory system, and flash memory control method | |
| JP2007004868A (en) | Semiconductor memory device and semiconductor memory device control method | |
| JP4544167B2 (en) | Memory controller and flash memory system | |
| JP4661369B2 (en) | Memory controller | |
| JP4501881B2 (en) | Memory controller and flash memory system | |
| JP2007094639A (en) | Memory controller and flash memory system | |
| JP4818453B1 (en) | Electronic device and data reading method | |
| JP2005292925A (en) | Memory controller, flash memory system, and control method for flash memory | |
| US20110228605A1 (en) | Nonvolatile memory | |
| JP2006221743A (en) | Memory system and method for writing semiconductor memory device | |
| JP4655034B2 (en) | Memory controller, flash memory system, and flash memory control method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090323 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20090323 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110920 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111011 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111202 |
|
| 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: 20120124 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120203 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150217 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4925301 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |