JP2010128697A - Memory system - Google Patents
Memory system Download PDFInfo
- Publication number
- JP2010128697A JP2010128697A JP2008301296A JP2008301296A JP2010128697A JP 2010128697 A JP2010128697 A JP 2010128697A JP 2008301296 A JP2008301296 A JP 2008301296A JP 2008301296 A JP2008301296 A JP 2008301296A JP 2010128697 A JP2010128697 A JP 2010128697A
- Authority
- JP
- Japan
- Prior art keywords
- data
- area
- memory
- error correction
- storage area
- 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
本発明は、メモリシステムに係り、例えば、NAND型フラッシュメモリ等の不揮発性メモリを備えたメモリシステムに関する。 The present invention relates to a memory system, for example, a memory system including a nonvolatile memory such as a NAND flash memory.
近年、PC(パーソナルコンピュータ)、携帯電話、デジタルカメラ、PDA(personal digital assistant)などの電子機器の記憶装置として、フラッシュメモリ等の不揮発性メモリが使用されている。特に、フラッシュメモリを電子機器に対して着脱可能な構成としたメモリカードが利用されている。 In recent years, nonvolatile memories such as flash memories have been used as storage devices for electronic devices such as PCs (personal computers), mobile phones, digital cameras, and PDAs (personal digital assistants). In particular, a memory card in which a flash memory is detachable from an electronic device is used.
フラッシュメモリを構成するメモリセルは、半導体基板上にトンネル絶縁膜を介して電荷蓄積を目的とする浮遊ゲート電極、ゲート間絶縁膜、制御ゲート電極が順に積層形成された積層ゲート構造を有している。このような構成のフラッシュメモリは、書き込み時に過剰に電子が浮遊ゲート電極に注入され、メモリセルの閾値電圧が異常に高くなることにより、読み出しの際にビット不良が発生するオーバープログラムと呼ばれる不良や、浮遊ゲート電極に注入された電子が基板などにリークしたり、基板などからリークした電子が浮遊ゲート電極に注入されることで、元のデータが逆データに反転してしまうリテンション不良が起こることがある。 A memory cell constituting a flash memory has a stacked gate structure in which a floating gate electrode, an inter-gate insulating film, and a control gate electrode are stacked in this order on a semiconductor substrate via a tunnel insulating film. Yes. In a flash memory having such a configuration, excessive electrons are injected into the floating gate electrode at the time of writing, and the threshold voltage of the memory cell becomes abnormally high. Electron injected into the floating gate electrode leaks to the substrate, etc., or leakage electron from the substrate etc. injects into the floating gate electrode, resulting in a retention failure that inverts the original data to reverse data There is.
一方、フラッシュメモリへのデータの記録には、ファイルシステムが使用される。フラッシュメモリは、管理領域を設けてファイルシステムなどの管理情報を記憶し、この管理情報に基づいて、データの書き込み、読み出し、消去等を行う。そのため、管理領域のデータが壊れてしまうと、フラッシュメモリに記録したデータにアクセスすることができなくなってしまう。 On the other hand, a file system is used for recording data in the flash memory. The flash memory is provided with a management area to store management information such as a file system, and performs writing, reading, erasing, and the like of data based on the management information. For this reason, if the data in the management area is corrupted, it becomes impossible to access the data recorded in the flash memory.
また、この種の関連技術として、更新された管理情報の格納時に一対のブロックを使用することで、管理情報の書き込みエラーに対する耐性を高める方式が開示されている(特許文献1参照)。
本発明は、管理情報などを格納する特定領域のデータ信頼性を向上させることが可能なメモリシステムを提供する。 The present invention provides a memory system capable of improving the data reliability of a specific area for storing management information and the like.
本発明の一態様に係るメモリシステムは、第1の記憶領域と第2の記憶領域とを有する不揮発性メモリと、前記第2の記憶領域への書き込み時に、前記第1の記憶領域よりもエラー訂正能力を高くするコントローラとを具備する。 A memory system according to one embodiment of the present invention includes a non-volatile memory having a first storage area and a second storage area, and a more error than the first storage area when writing to the second storage area. And a controller for increasing the correction capability.
本発明によれば、管理情報などを格納する特定領域のデータ信頼性を向上させることが可能なメモリシステムを提供することができる。 ADVANTAGE OF THE INVENTION According to this invention, the memory system which can improve the data reliability of the specific area | region which stores management information etc. can be provided.
以下、本発明の実施形態について図面を参照して説明する。なお、以下の説明において、同一の機能及び構成を有する要素については、同一符号を付し、重複説明は必要な場合にのみ行う。 Embodiments of the present invention will be described below with reference to the drawings. In the following description, elements having the same function and configuration are denoted by the same reference numerals, and redundant description will be given only when necessary.
[第1の実施形態]
不揮発性メモリ(例えばNAND型フラッシュメモリ)を備えたメモリシステムとしては、様々な形式のものが考えられる。その様々なメモリシステムの中で、本実施形態では、メモリカードを一例に挙げて説明する。メモリカードは、ホスト装置2に設けられたスロットに対して着脱可能なように構成されており、ホスト装置に装着された状態で動作する。しかし、本発明はメモリカードに限定されるものではなく、メモリシステム及びホスト装置を1つのLSI(Large-Scale Integrated Circuit)として構成してもよい。すなわち、ホスト装置が実装されたプリント基板上に、メモリシステムを構成するコントローラ及び不揮発性半導体メモリが実装されるように構成してもよい。
[First Embodiment]
Various types of memory systems including a non-volatile memory (for example, a NAND flash memory) can be considered. Among the various memory systems, in this embodiment, a memory card will be described as an example. The memory card is configured to be detachable from a slot provided in the
[1.メモリシステム1の構成]
図1は、本発明の第1の実施形態に係るメモリシステム(メモリカード)1の構成を示すブロック図である。メモリカード1は、ホスト装置2に接続された時に電源供給を受けて動作し、ホスト装置2からのアクセス要求に応じた処理を行う。ホスト装置2は、バスインターフェースを介して接続されるメモリカード1に対してアクセスを行うためのハードウェア及びソフトウェアを備えている。また、ホスト装置2は、メモリカード1に電源を供給するための電源回路を備えている。
[1. Configuration of Memory System 1]
FIG. 1 is a block diagram showing a configuration of a memory system (memory card) 1 according to the first embodiment of the present invention. The
メモリカード1は、ホスト装置2との間でバスインターフェースを介してデータの授受を行う。メモリカード1は、不揮発性メモリの一種であるNAND型フラッシュメモリ11、及びNAND型フラッシュメモリ11を制御するメモリコントローラ12を備えている。なお、不揮発性メモリとしては、NAND型フラッシュメモリ11に限定されず、様々な種類の不揮発性メモリを使用することが可能である。
The
メモリコントローラ12は、NAND型フラッシュメモリ11内部の物理状態(例えば、何処の物理ブロックアドレスに、何番目の論理セクタアドレスのデータが含まれているか、或いは、何処のブロックが消去状態であるか)を管理する。メモリコントローラ12は、ホストインターフェース(ホストI/F)13、CPU(Central Processing Unit)14、ROM(Read-only memory)15、RAM(Random access memory)16、バッファ17、メモリインターフェース(メモリI/F)18、第1のECC(Error Check and Correct)回路19、及び第2のECC回路20を備えている。
The
ホストインターフェース13は、所定のプロトコルに従ってメモリコントローラ12とホスト装置2との間のインターフェース処理を行う。メモリインターフェース18は、所定のプロトコルに従ってメモリコントローラ12とNAND型フラッシュメモリ11との間のインターフェース処理を行う。
The
ROM15は、CPU14によって使用される制御プログラム等を格納する。RAM16は、CPU14の作業エリアとして使用され、ROM15から読み出された制御プログラムや各種のテーブルを格納する。バッファ17は、ホスト装置2から送られてくるデータをNAND型フラッシュメモリ11に書き込む際に、ホストインターフェースに基づく一定量のデータを一時的に格納したり、NAND型フラッシュメモリ11から読み出されるデータをホスト装置2へ送る際に、一定量のデータを一時的に格納したりする。
The
CPU14は、メモリカード1全体の動作を制御する。CPU14は、メモリカード1がホスト装置2から電源供給を受けると、ROM15或いはNAND型フラッシュメモリ11に格納されている制御プログラムを読み出して所定の処理を実行したり、ROM15或いはNAND型フラッシュメモリ11から読み出したデータを用いて各種のテーブルをRAM16上に作成し、このテーブルを用いて所定の処理を実行したりする。また、CPU14は、ホスト装置2から書き込みコマンド、読み出しコマンド、及び消去コマンド等を受け、これらのコマンドに基づいてNAND型フラッシュメモリ11に対して書き込み処理、読み出し処理、及び消去処理等を実行する。
The
第1のECC回路19及び第2のECC回路20の各々は、ホスト装置2から送られる書き込みデータに対しては、所定のビット数(或いはバイト数)からなるデータ部分ごとにエラー訂正符号を生成する。各エラー訂正符号は、これに対応するデータ部分とともにNAND型フラッシュメモリ11に格納される。また、第1のECC回路19及び第2のECC回路20の各々は、NAND型フラッシュメモリ11から送られる読み出しデータに対しては、同時に読み出されるエラー訂正符号を用いて、データ部分ごとにエラーの検出及び訂正を行う。エラーの訂正を行った後、ECC回路は、エラー訂正符号を取り除いた状態でデータをバッファ17に送る。従って、ホスト装置2には、エラー訂正符号を含まない読み出しデータがメモリカード1から送られる。
Each of the
図2は、NAND型フラッシュメモリ11の論理構成を示す概略図である。NAND型フラッシュメモリ11は、ファイルシステム管理領域21、及びユーザ領域22を備えている。先頭アドレス“0”からアドレス“X−1”までがファイルシステム管理領域21、アドレス“X”以降がユーザ領域22である。図2に示すアドレスは、論理アドレスを表している。
FIG. 2 is a schematic diagram showing a logical configuration of the
ユーザ領域22は、ユーザが自由に読み出し及び書き込みすることが可能なユーザデータ(文書、静止画、動画などのデータ)を格納するために使用される。
The
一方、ファイルシステム管理領域21は、ユーザ領域22に格納されたデータの管理情報や、NAND型フラッシュメモリ11に関する種々な管理情報(基本的にはユーザが自由に読み出し及び書き込みすることができず、NAND型フラッシュメモリ11の起動時等にホスト装置2やメモリコントローラ12が使用する情報)を格納するために使用される。また、ファイルシステム管理領域21は、NAND型フラッシュメモリ11に格納されるデータを管理する方式であるファイルシステムを格納する。ファイルシステムには、NAND型フラッシュメモリ11にファイルやフォルダ(ディレクトリ)を作成したり、これらを移動や削除したりする方法や、データを記録する方法、管理領域の場所や利用方法などが定められている。
On the other hand, the file
図3は、NAND型フラッシュメモリ11の構造を示す概略図である。各ページは、例えば4224バイトを有しており、このうち、例えば、4096バイトがデータ領域、残りの128バイトが冗長領域として使用される。ページは、データの書き込み或いは読み出しの単位である。ブロックは、複数のページから構成されており、データの消去単位である。NAND型フラッシュメモリ11は、記憶領域以外に、ページ単位でデータを保持するページバッファを備えており、本実施形態では、ページバッファの記憶容量は、1ページの容量と同じ4224バイトである。このページバッファを介して、NAND型フラッシュメモリ11とメモリインターフェース18との間でデータの授受が行われる。
FIG. 3 is a schematic diagram showing the structure of the
図4は、NAND型フラッシュメモリ11に含まれる1個のブロックの構成を示す等価回路図である。
FIG. 4 is an equivalent circuit diagram showing a configuration of one block included in the
ブロックは、X方向に沿って順に配置された(m+1)個のNANDストリングを備えている(mは、1以上の自然数)。各NANDストリングは、2個の選択トランジスタST1、ST2、及び(n+1)個のメモリセルトランジスタMTを備えている(nは、1以上の自然数)。(m+1)個のNANDストリングにそれぞれ含まれる選択トランジスタST1は、ドレインがビット線BL0〜BLmに接続され、ゲートが選択ゲート線SGDに共通接続されている。また、選択トランジスタST2は、ソースがソース線SLに共通接続され、ゲートが選択ゲート線SGSに共通接続されている。 The block includes (m + 1) NAND strings arranged in order along the X direction (m is a natural number of 1 or more). Each NAND string includes two select transistors ST1 and ST2 and (n + 1) memory cell transistors MT (n is a natural number of 1 or more). The select transistors ST1 included in each of (m + 1) NAND strings have drains connected to the bit lines BL0 to BLm and gates commonly connected to the select gate line SGD. In addition, the selection transistor ST2 has a source commonly connected to the source line SL and a gate commonly connected to the selection gate line SGS.
各メモリセルトランジスタMTは、半導体基板上にゲート絶縁膜(トンネル絶縁膜)を介在して形成された積層ゲート構造を備えたMOSFET(metal oxide semiconductor field effect transistor)である。積層ゲート構造は、ゲート絶縁膜上に形成された電荷蓄積層(浮遊ゲート電極)と、電荷蓄積層上にゲート間絶縁膜を介在して形成された制御ゲート電極とを含んでいる。メモリセルトランジスタMTは、浮遊ゲート電極に注入される電子の数に応じて閾値電圧が変化し、この閾値電圧の違いに応じてデータを記憶する。 Each memory cell transistor MT is a MOSFET (metal oxide semiconductor field effect transistor) having a stacked gate structure formed on a semiconductor substrate with a gate insulating film (tunnel insulating film) interposed therebetween. The stacked gate structure includes a charge storage layer (floating gate electrode) formed on the gate insulating film and a control gate electrode formed on the charge storage layer with an inter-gate insulating film interposed. The memory cell transistor MT changes its threshold voltage according to the number of electrons injected into the floating gate electrode, and stores data according to the difference in threshold voltage.
各NANDストリングにおいて、(n+1)個のメモリセルトランジスタMTは、選択トランジスタST1のソースと選択トランジスタST2のドレインとの間に、それぞれの電流経路が直列接続されるように配置されている。すなわち、複数のメモリセルトランジスタMTは、隣接するもの同士で拡散領域(ソース領域若しくはドレイン領域)を共有するような形でY方向に直列接続される。 In each NAND string, (n + 1) memory cell transistors MT are arranged such that their current paths are connected in series between the source of the selection transistor ST1 and the drain of the selection transistor ST2. That is, the plurality of memory cell transistors MT are connected in series in the Y direction so that adjacent ones share a diffusion region (source region or drain region).
そして、最もドレイン側に位置するメモリセルトランジスタMTから順に、制御ゲート電極がワード線WL0〜WLnにそれぞれ接続されている。従って、ワード線WL0に接続されたメモリセルトランジスタMTのドレインは選択トランジスタST1のソースに接続され、ワード線WLnに接続されたメモリセルトランジスタMTのソースは選択トランジスタST2のドレインに接続されている。 The control gate electrodes are connected to the word lines WL0 to WLn in order from the memory cell transistor MT located closest to the drain side. Therefore, the drain of the memory cell transistor MT connected to the word line WL0 is connected to the source of the selection transistor ST1, and the source of the memory cell transistor MT connected to the word line WLn is connected to the drain of the selection transistor ST2.
ワード線WL0〜WLnは、ブロック内のNANDストリング間で、メモリセルトランジスタMTの制御ゲート電極を共通に接続している。つまり、ブロック内において同一行にあるメモリセルトランジスタMTの制御ゲート電極は、同一のワード線WLに接続される。この同一のワード線WLに接続される(m+1)個のメモリセルトランジスタMTは1ページとして取り扱われ、このページごとにデータの書き込み及びデータの読み出しが行われる。 The word lines WL0 to WLn connect the control gate electrodes of the memory cell transistors MT in common between the NAND strings in the block. That is, the control gate electrodes of the memory cell transistors MT in the same row in the block are connected to the same word line WL. The (m + 1) memory cell transistors MT connected to the same word line WL are handled as one page, and data writing and data reading are performed for each page.
また、ビット線BL0〜BLmは、ブロック間で、選択トランジスタST1のドレインを共通に接続している。つまり、複数のブロック内において同一列にあるNANDストリングは、同一のビット線BLに接続される。 The bit lines BL0 to BLm connect the drains of the selection transistors ST1 in common between the blocks. That is, NAND strings in the same column in a plurality of blocks are connected to the same bit line BL.
本実施形態に係るNAND型フラッシュメモリ11に含まれるメモリセルトランジスタMTは、2値(1ビット)を記憶するように構成されていてもよいし、多値(2ビット以上)を記憶するように構成されていてもよい。
The memory cell transistor MT included in the
[2.メモリカード1の動作]
次に、このように構成されたメモリカード1の動作について説明する。図5は、メモリカード1のデータ書き込み動作を示すフローチャートである。データ書き込み時には、ホスト装置2は、書き込みコマンド、アドレス、及び書き込みデータをメモリカード1に送る。メモリコントローラ12は、これら書き込みコマンド、アドレス、及び書き込みデータを受ける(ステップS100)。なお、ここでいうアドレスとは、論理アドレスを意味している。
[2. Operation of memory card 1]
Next, the operation of the
続いて、メモリコントローラ12は、アドレスがファイルシステム管理領域21及びユーザ領域22のどちらを指しているか、すなわち、アドレスが“X”より小さいか否かを判定する(ステップS101)。本実施形態では、ファイルシステム管理領域21及びユーザ領域22のそれぞれに対して、書き込み処理の方法を変えている。アドレスが“X”より小さい場合は、メモリコントローラ12は、ファイルシステム管理領域21への書き込み処理を実行する(ステップS102)。一方、アドレスが“X”以上である場合は、メモリコントローラ12は、ユーザ領域22への書き込み処理を実行する(ステップS103)。
Subsequently, the
[2−1.ユーザ領域22への書き込み動作]
最初に、ステップS103におけるユーザ領域22への書き込み処理について説明する。図6は、ユーザ領域22への書き込み処理を示すフローチャートである。図7は、ユーザ領域22への書き込み処理を具体的に説明する概略図である。例えば、アドレス“Y”に対して512バイトの書き込みアクセスが発生したものとする。アドレス“Y”は、アドレス“X”以上であり、よってこのアドレス“Y”はユーザ領域22を指している。
[2-1. Write operation to user area 22]
First, the writing process to the
まず、メモリコントローラ12は、書き込みデータを例えば256バイト単位で分割する(ステップS200)。ホスト装置2とメモリカード1との間で扱われる最小データサイズが512バイトとすると、1ページ内のデータ領域には、それぞれが512バイトの8個のデータが格納され、また、1ページは、これら8個のデータに対応しかつそれぞれが16バイトの8個の冗長領域を含んでいる。本実施形態では、512バイトの書き込みデータをそれぞれが256バイトの2個のデータ部分に分割するため、1ページに含まれる4096バイトの全データ領域は、それぞれが256バイトの16個のデータ領域に分割されることになる。また、1ページに含まれる128バイトの全冗長領域は、それぞれが8バイトの16個の冗長領域に分割される。
First, the
続いて、第1のECC回路19は、256バイトのデータ部分ごとに、エラー訂正符号を生成する(ステップS201)。この場合のエラー訂正符号のサイズは、例えば3バイトである。第1のECC回路19は、それの訂正能力は1ビット、検出能力は2ビットであり、ランダムエラーを訂正可能である。よって、第1のECC回路19は、256バイトあたり1ビットのエラーを訂正することが可能である。
Subsequently, the
続いて、メモリコントローラ12は、256バイト単位で書き込みデータをユーザ領域22内のデータ領域に書き込む。さらに、メモリコントローラ12は、256バイトのデータ部分に対応するエラー訂正符号を、これに対応して設けられた8バイトの冗長領域に書き込む(ステップS202)。
Subsequently, the
具体的には、図7に示すように、ユーザ領域22内のページ“A”に512バイトの書き込みデータを書き込む場合、この書き込みデータがそれぞれが256バイトの2個のデータ部分に分割され、これらがそれぞれデータ領域1及びデータ領域2に格納される。また、第1のECC回路19によって1個目のデータ部分に対してエラー訂正符号ECC1が生成され、2個目のデータ部分に対してエラー訂正符号ECC2が生成されており、エラー訂正符号ECC1はデータ領域1に対応する8バイトの冗長領域に格納され、エラー訂正符号ECC2はデータ領域2に対応する8バイトの冗長領域に格納される。このようにして、ユーザ領域22への書き込み処理が行われる。
Specifically, as shown in FIG. 7, when 512 bytes of write data is written to the page “A” in the
[2−2.ファイルシステム管理領域21への書き込み動作]
次に、ステップS102におけるファイルシステム管理領域21への書き込み処理について説明する。図8は、ファイルシステム管理領域21への書き込み処理を示すフローチャートである。図9は、ファイルシステム管理領域21への書き込み処理を具体的に説明する概略図である。例えば、アドレス“Z”に対して512バイトの書き込みアクセスが発生したものとする。アドレス“Z”は、アドレス“X”より小さく、よってこのアドレス“Z”はファイルシステム管理領域21を指している。
[2-2. Write Operation to File System Management Area 21]
Next, the writing process to the file
まず、メモリコントローラ12は、書き込みデータを例えば32バイト単位で分割する(ステップS300)。ホスト装置2とメモリカード1との間で扱われる最小データサイズが512バイトとすると、1ページ内のデータ領域には、それぞれが512バイトの8個のデータが格納され、また、1ページは、これら8個のデータに対応しかつそれぞれが16バイトの8個の冗長領域を含んでいる。本実施形態では、512バイトの書き込みデータを32バイト単位で分割するため、512バイトのデータ領域は、それぞれが32バイトの16個のデータ領域に分割される。よって、1ページに含まれる4096バイトの全データ領域は、それぞれが32バイトの128個のデータ領域に分割されることになる。また、それぞれが32バイトの8個のデータ領域に対応して8バイトの冗長領域が設けられる。
First, the
続いて、第2のECC回路20は、32バイトのデータ部分ごとに、エラー訂正符号を生成する(ステップS301)。この場合のエラー訂正符号のサイズは、例えば2バイトである。第2のECC回路20は、それの訂正能力は1ビット、検出能力は2ビットであり、ランダムエラーを訂正可能である。よって、第2のECC回路20は、32バイトあたり1ビットのエラーを訂正することが可能である。 Subsequently, the second ECC circuit 20 generates an error correction code for each 32-byte data portion (step S301). In this case, the size of the error correction code is, for example, 2 bytes. The second ECC circuit 20 has a correction capability of 1 bit and a detection capability of 2 bits, and can correct random errors. Therefore, the second ECC circuit 20 can correct an error of 1 bit per 32 bytes.
続いて、メモリコントローラ12は、32バイト単位で書き込みデータをファイルシステム管理領域21内のデータ領域に書き込む。すなわち、ファイルシステム管理領域21への書き込み時のデータサイズは、ユーザ領域22への書き込み時のデータサイズの1/8以下に設定される。さらに、メモリコントローラ12は、書き込みデータに対して生成された全てのエラー訂正符号を、ファイルシステム管理領域21内のデータ領域に書き込む(ステップS302)。
Subsequently, the
具体的には、図9に示すように、ファイルシステム管理領域21内のページ“B”に512バイトの書き込みデータを書き込む場合、この書き込みデータがそれぞれが32バイトの16個のデータ部分に分割され、これらがそれぞれデータ領域1乃至データ領域16に格納される。また、第2のECC回路20によって16個のデータ部分に対して16個のECC(ECC1乃至ECC16)が生成されており、これらECC1乃至ECC16は、例えばデータ領域113に格納される。このようにして、ファイルシステム管理領域21への書き込み処理が行われる。
Specifically, as shown in FIG. 9, when 512 bytes of write data is written to page “B” in the file
[2−3.データ読み出し動作]
次に、メモリカード1のデータ読み出し動作について説明する。データ読み出し時には、ホスト装置2は、読み出しコマンド、及びアドレスをメモリカード1に送る。読み出しアクセスを受けた場合には、メモリコントローラ12は、アドレスに応じてデータの読み出し方法を変える。
[2-3. Data read operation]
Next, the data read operation of the
アドレスが“X”以上である場合は、メモリコントローラ12は、ユーザ領域22への読み出しアクセスであると判断する。この場合は図7で示すデータ領域及び冗長領域に読み出しデータ及びエラー訂正符号が書き込まれているため、メモリコントローラ12は、これらのデータ領域及び冗長領域から読み出しデータ及びエラー訂正符号を読み出す。なお、データ及びエラー訂正符号の格納場所は、例えばユーザ領域22内の冗長領域に管理情報として予め格納しておき、この管理情報を確認することで判断することができる。
When the address is “X” or more, the
続いて、第1のECC回路19は、エラー訂正符号を用いて、256バイトのデータ部分ごとにエラー訂正を実行する。そして、メモリコントローラ12は、エラー訂正された読み出しデータをホスト装置2に送る。
Subsequently, the
一方、アドレスが“X”より小さい場合は、メモリコントローラ12は、ファイルシステム管理領域21への読み出しアクセスであると判断する。この場合は図9で示すデータ領域に読み出しデータ及びエラー訂正符号が書き込まれているため、メモリコントローラ12は、これらのデータ領域から読み出しデータ及びエラー訂正符号を読み出す。データ及びエラー訂正符号の格納場所は、例えばファイルシステム管理領域21内の冗長領域に管理情報として予め格納しておき、この管理情報を確認することで判断することができる。
On the other hand, if the address is smaller than “X”, the
続いて、第2のECC回路20は、エラー訂正符号を用いて、32バイトのデータ部分ごとにエラー訂正を実行する。そして、メモリコントローラ12は、エラー訂正された読み出しデータをホスト装置2に送る。
Subsequently, the second ECC circuit 20 executes error correction for each 32-byte data portion using the error correction code. Then, the
以上詳述したように第1の実施形態では、NAND型フラッシュメモリ11がファイルシステム管理領域21及びユーザ領域22を備えており、これらファイルシステム管理領域21及びユーザ領域22に対して、メモリコントローラ12がデータの書き込み方法及び読み出し方法を変えるようにしている。すなわち、ユーザ領域22に対しては、第1のデータサイズ(例えば256バイト)単位でエラー訂正符号の生成及びエラー訂正処理を実行し、ファイルシステム管理領域21に対しては、第1のデータサイズより小さい第2のデータサイズ(例えば32バイト)単位でエラー訂正符号の生成及びエラー訂正処理を実行するようにしている。
As described above in detail, in the first embodiment, the
従って第1の実施形態によれば、特定領域(ファイルシステム管理領域21)に対してエラー訂正能力を高めることが可能となり、特定領域に格納されているファイルシステムや管理情報などの重要なデータの信頼性を向上させることができる。これにより、メモリシステム全体の信頼性を向上させることが可能となる。また、ファイルシステム管理領域21の記憶容量が減少するのを抑えつつ、ファイルシステム管理領域21に対してエラー訂正能力を高めることが可能となる。
Therefore, according to the first embodiment, it is possible to increase the error correction capability with respect to the specific area (file system management area 21), and important data such as the file system and management information stored in the specific area can be stored. Reliability can be improved. As a result, the reliability of the entire memory system can be improved. In addition, it is possible to increase the error correction capability for the file
[第2の実施形態]
第2の実施形態は、ファイルシステム管理領域21へのエラー訂正符号の書き込み方法を変えており、このエラー訂正符号をファイルシステム管理領域21の冗長領域に格納するようにしている。
[Second Embodiment]
In the second embodiment, the method of writing the error correction code to the file
図10は、本発明の第2の実施形態に係るファイルシステム管理領域21内の1ページの構成を示す概略図である。
FIG. 10 is a schematic diagram showing the configuration of one page in the file
本実施形態のNAND型フラッシュメモリ11では、各ページは、例えば4480バイトを有しており、このうち、例えば、4096バイトがデータ領域、残りの384バイトが冗長領域として使用される。
In the
ファイルシステム管理領域21へのデータ書き込み時、メモリコントローラ12は、書き込みデータを32バイト単位で分割する。ホスト装置2とメモリカード1との間で扱われる最小データサイズが512バイトとすると、1ページ内のデータ領域には、それぞれが512バイトの8個のデータが格納され、また、1ページは、これら8個のデータに対応しかつそれぞれが48バイトの8個の冗長領域を含んでいる。本実施形態でも、512バイトの書き込みデータを32バイト単位で分割するため、512バイトのデータ領域は、それぞれが32バイトの16個のデータ領域に分割される。よって、1ページに含まれる4096バイトの全データ領域は、それぞれが32バイトの128個のデータ領域に分割されることになる。また、1ページに含まれる384バイトの全冗長領域は、128個のデータ領域に対応しかつそれぞれが3バイトの128個の冗長領域に分割される。
When writing data to the file
ここで、図10に示すように、メモリコントローラ12は、第2のECC回路20によって512バイトの書き込みデータに対して生成された16個のECC(ECC1乃至ECC16)をそれぞれ、データ領域1乃至データ領域16に対応する16個の冗長領域に格納する。
Here, as shown in FIG. 10, the
データ読み出し時には、メモリコントローラ12は、データ領域及び冗長領域から読み出しデータ及びエラー訂正符号を読み出す。なお、データ及びエラー訂正符号の格納場所は、例えばファイルシステム管理領域21内のデータ領域或いは冗長領域に管理情報として予め格納しておき、この管理情報を確認することで判断することができる。そして、第2のECC回路20は、エラー訂正符号を用いて、32バイトのデータ部分ごとにエラー訂正を実行する。そして、メモリコントローラ12は、エラー訂正された読み出しデータをホスト装置2に送る。なお、ユーザ領域22への書き込み方法、及びユーザ領域22からの読み出し方法は、第1の実施形態と同じである。
At the time of data reading, the
以上詳述したように第2の実施形態によれば、第1の実施形態と同様に、特定領域(ファイルシステム管理領域21)に対してエラー訂正能力を高めることが可能となり、特定領域に格納されているファイルシステムや管理情報などの重要なデータの信頼性を向上させることができる。また、本実施形態では、エラー訂正符号をデータ領域に格納する必要がないため、ファイルシステム管理領域21のデータ領域の記憶容量が減少するのを防ぐことができる。
As described above in detail, according to the second embodiment, as in the first embodiment, it is possible to increase the error correction capability for the specific area (file system management area 21) and store it in the specific area. It is possible to improve the reliability of important data such as file systems and management information. Further, in this embodiment, it is not necessary to store the error correction code in the data area, so that it is possible to prevent the storage capacity of the data area of the file
なお、上記各実施形態ではNAND型の不揮発性半導体メモリを例に挙げて説明したが、これ以外に、NOR型、AND型、DINOR(Divided bit-line NOR)型の不揮発性半導体メモリにも適用可能である。 In each of the above embodiments, the NAND type nonvolatile semiconductor memory has been described as an example. However, the present invention is also applicable to a NOR type, AND type, and DINOR (Divided bit-line NOR) type nonvolatile semiconductor memory. Is possible.
本発明は、上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲内で、構成要素を変形して具体化できる。また、実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を構成することができる。例えば、実施形態に開示される全構成要素から幾つかの構成要素を削除してもよいし、異なる実施形態の構成要素を適宜組み合わせてもよい。 The present invention is not limited to the above-described embodiment, and can be embodied by modifying the components without departing from the scope of the invention. In addition, various inventions can be configured by appropriately combining a plurality of constituent elements disclosed in the embodiments. For example, some constituent elements may be deleted from all the constituent elements disclosed in the embodiments, or constituent elements of different embodiments may be appropriately combined.
MT…メモリセルトランジスタ、ST1,ST2…選択トランジスタ、SGD,SGS…選択ゲート線、SL…ソース線、WL…ワード線、BL…ビット線、1…メモリシステム、2…ホスト装置、11…NAND型フラッシュメモリ、12…メモリコントローラ、13…ホストインターフェース、14…CPU、15…ROM、16…RAM、17…バッファ、18…メモリインターフェース、19…第1のECC回路、20…第2のECC回路、21…ファイルシステム管理領域、22…ユーザ領域。 MT ... memory cell transistor, ST1, ST2 ... selection transistor, SGD, SGS ... selection gate line, SL ... source line, WL ... word line, BL ... bit line, 1 ... memory system, 2 ... host device, 11 ... NAND type Flash memory, 12 ... Memory controller, 13 ... Host interface, 14 ... CPU, 15 ... ROM, 16 ... RAM, 17 ... Buffer, 18 ... Memory interface, 19 ... First ECC circuit, 20 ... Second ECC circuit, 21 ... File system management area, 22 ... User area.
Claims (5)
前記第2の記憶領域への書き込み時に、前記第1の記憶領域よりもエラー訂正能力を高くするコントローラと、
を具備することを特徴とするメモリシステム。 A non-volatile memory having a first storage area and a second storage area;
A controller that has an error correction capability higher than that of the first storage area when writing to the second storage area;
A memory system comprising:
前記第2の記憶領域への書き込み時に、前記第1のデータサイズより小さい第2のデータサイズ単位で第2のエラー訂正符号を生成する第2のECC回路と、
をさらに具備することを特徴とする請求項1に記載のメモリシステム。 A first ECC (Error Check and Correct) circuit that generates a first error correction code in units of a first data size when writing to the first storage area;
A second ECC circuit that generates a second error correction code in a second data size unit smaller than the first data size when writing to the second storage area;
The memory system according to claim 1, further comprising:
前記第2のデータサイズは、前記第1のデータサイズの1/8以下であることを特徴とする請求項2に記載のメモリシステム。 The controller divides write data into the first data size when writing to the first storage area, and divides the write data into the second data size when writing to the second storage area. Then write,
The memory system according to claim 2, wherein the second data size is 1/8 or less of the first data size.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008301296A JP2010128697A (en) | 2008-11-26 | 2008-11-26 | Memory system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008301296A JP2010128697A (en) | 2008-11-26 | 2008-11-26 | Memory system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010128697A true JP2010128697A (en) | 2010-06-10 |
Family
ID=42329058
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008301296A Withdrawn JP2010128697A (en) | 2008-11-26 | 2008-11-26 | Memory system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010128697A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014086062A (en) * | 2012-10-29 | 2014-05-12 | Sony Corp | Storage control device, storage, information processing system and storage control method |
JP2019049995A (en) * | 2018-10-22 | 2019-03-28 | 東芝メモリ株式会社 | Memory system and control method for nonvolatile memory |
JP2019057156A (en) * | 2017-09-21 | 2019-04-11 | キヤノン株式会社 | Information processing apparatus, method of controlling same, and program |
WO2023185746A1 (en) * | 2022-04-02 | 2023-10-05 | 武汉杰开科技有限公司 | Data storage system and method |
-
2008
- 2008-11-26 JP JP2008301296A patent/JP2010128697A/en not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014086062A (en) * | 2012-10-29 | 2014-05-12 | Sony Corp | Storage control device, storage, information processing system and storage control method |
JP2019057156A (en) * | 2017-09-21 | 2019-04-11 | キヤノン株式会社 | Information processing apparatus, method of controlling same, and program |
JP7065578B2 (en) | 2017-09-21 | 2022-05-12 | キヤノン株式会社 | Information processing equipment, its control method, and programs |
JP2019049995A (en) * | 2018-10-22 | 2019-03-28 | 東芝メモリ株式会社 | Memory system and control method for nonvolatile memory |
WO2023185746A1 (en) * | 2022-04-02 | 2023-10-05 | 武汉杰开科技有限公司 | Data storage system and method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8621266B2 (en) | Nonvolatile memory system and related method of performing erase refresh operation | |
US9075740B2 (en) | Memory system | |
US8125825B2 (en) | Memory system protected from errors due to read disturbance and reading method thereof | |
KR101888009B1 (en) | Storage device | |
JP5142685B2 (en) | Memory system | |
US8484409B2 (en) | Nonvolatile memory controller with logical defective cluster table | |
US9940063B2 (en) | Memory system and operating method thereof | |
US20170109276A1 (en) | Memory system and operation method thereof | |
US8760921B2 (en) | Storage device and control method of nonvolatile memory | |
JP5550386B2 (en) | Nonvolatile semiconductor memory device and memory system | |
US20160328155A1 (en) | Memory system and operating method thereof | |
TWI720985B (en) | Memory system and operation method for the same | |
US9916088B2 (en) | Memory system and operating method thereof | |
JP2010218637A (en) | Semiconductor storage and method of controlling the same | |
JP2011128984A (en) | Memory system | |
JP2008090451A (en) | Storage device | |
JP2010128697A (en) | Memory system | |
US9025379B2 (en) | Semiconductor device and method of operating the same | |
JP4637526B2 (en) | Memory card and nonvolatile storage device | |
TW200949840A (en) | Method for increasing reliability of data accessing for a multi-level cell type non-volatile memory | |
JP2005292925A (en) | Memory controller, flash memory system, and control method for flash memory | |
JP4194518B2 (en) | Memory controller, flash memory system, and flash memory control method | |
JP2011243116A (en) | Memory system and data transfer method therefor | |
JP4304167B2 (en) | Memory controller, flash memory system, and flash memory control method | |
JP4282410B2 (en) | Flash memory control circuit, and memory controller and flash memory system provided with the control circuit |
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: 20120207 |