JP2009217630A - Memory system - Google Patents
Memory system Download PDFInfo
- Publication number
- JP2009217630A JP2009217630A JP2008061655A JP2008061655A JP2009217630A JP 2009217630 A JP2009217630 A JP 2009217630A JP 2008061655 A JP2008061655 A JP 2008061655A JP 2008061655 A JP2008061655 A JP 2008061655A JP 2009217630 A JP2009217630 A JP 2009217630A
- Authority
- JP
- Japan
- Prior art keywords
- area
- memory
- data
- logical
- logical address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000015654 memory Effects 0.000 title claims abstract description 245
- 238000000034 method Methods 0.000 claims description 4
- 230000007423 decrease Effects 0.000 claims description 3
- 230000006866 deterioration Effects 0.000 abstract description 9
- 238000006243 chemical reaction Methods 0.000 description 75
- 238000010586 diagram Methods 0.000 description 16
- 238000005192 partition Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000013403 standard screening design Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
Abstract
Description
本発明は、メモリシステムに係わり、例えば、フラッシュEEPROM型不揮発性メモリを用いたメモリシステムに関する。 The present invention relates to a memory system, for example, a memory system using a flash EEPROM type nonvolatile memory.
半導体メモリは、大型コンピュータの主記憶から、パーソナルコンピュータ、家電製品、携帯電話等で利用されている。フラッシュEEPROM型不揮発性メモリ(以下、NAND型フラッシュメモリ)は、各種メモリ媒体(SDカード、MMC(Marti Media Card)、MS(Magnetic Stripe)カード、CF(Compact Flash)カード、USBメモリ、SSD(Solid-State-Disk)等)に適用される。また、NAND型フラッシュメモリは、デジタルカメラ、デジタルビデオカメラ、MP3等の音楽機器、モバイル機器、デジタルテレビ等において、画像、動画、音声、ゲーム等の情報記憶媒体として用いられ、さらに、パーソナルコンピュータのHDDに代わる記憶媒体(SSD(Solid State Drive))としても用いられる。 Semiconductor memories are used in main computers of large computers, personal computers, home appliances, mobile phones and the like. Flash EEPROM type non-volatile memory (hereinafter referred to as NAND type flash memory) includes various memory media (SD card, MMC (Marti Media Card), MS (Magnetic Stripe) card, CF (Compact Flash) card, USB memory, SSD (Solid -State-Disk) etc. The NAND flash memory is used as an information storage medium for images, moving images, sounds, games, etc. in music devices such as digital cameras, digital video cameras, MP3, mobile devices, digital televisions, etc. It is also used as a storage medium (SSD (Solid State Drive)) instead of the HDD.
NAND型フラッシュメモリでは、複数のメモリセルから成るページ単位でデータの書込み/読出し動作が実行され、複数のページから成るブロック単位でデータの消去動作が実行される。 In the NAND flash memory, data write / read operations are executed in units of pages composed of a plurality of memory cells, and data erase operations are executed in units of blocks composed of a plurality of pages.
NAND型フラッシュメモリには、データの読出し回数、書込み回数、あるいは、消去回数に制限がある。通常、NAND型フラッシュメモリのデータは、105乗回程度の読出し回数、書込み回数、あるいは、消去回数で劣化する。NAND型フラッシュメモリをSSDとして用いた場合、NAND型フラッシュメモリは、かなりの短期間で寿命が尽きてしまう。 NAND flash memory has a limit on the number of times of reading, writing, or erasing data. Normally, data in a NAND flash memory deteriorates with the number of readings, the number of writings, or the number of erasings of about 10 5 times. When a NAND type flash memory is used as an SSD, the NAND type flash memory will run out in a considerably short period of time.
さらに、ブロックの容量よりも小さな小容量データの書込み/読出しが多い場合であっても、データ消去はブロック単位で実行されるため、消去回数が嵩み、メモリの劣化が速くなる。通常、パーソナルコンピュータの使用環境では、画像データまたは音楽ファイル等のようなブロックの容量よりも大きな大容量データばかりではなく、小容量データを扱う場合が多い。 Furthermore, even when writing / reading of small-capacity data smaller than the capacity of the block is frequent, data erasure is executed in units of blocks, so that the number of erasures increases and the deterioration of the memory is accelerated. Usually, in a use environment of a personal computer, not only large-capacity data larger than the block capacity such as image data or music files, but also small-capacity data is often handled.
DRAMまたはFeRAM等のRAMを、NAND型フラッシュメモリのバッファまたはキャッシュとして用いることで、NAND型フラッシュメモリの劣化を抑制することが考えられる。しかし、近年、SSD用のNAND型フラッシュメモリは、大容量されており、このようなNAND型フラッシュメモリの劣化を抑制するほど大きな容量のRAMを確保することは困難である。
NAND型フラッシュメモリのアクセス回数による劣化を回避することができるメモリシステムを提供する。 A memory system capable of avoiding deterioration due to the number of accesses of a NAND flash memory is provided.
本発明に係る実施形態に従ったメモリシステムは、フローティングゲートを有し電気的にデータの消去、書込みおよび読出し可能なメモリセルが複数配設されて書込みおよび読出し単位となるページを成し、該ページが複数配設されて消去単位となるブロックを成し、該ブロックが複数配設された不揮発性メモリと、前記不揮発性メモリへ書き込むデータあるいは前記不揮発性メモリから読み出したデータを一時的に記憶するランダムアクセスメモリと、前記不揮発性メモリおよび前記ランダムアクセスメモリを制御する制御部とを備え、前記不揮発性メモリは、論理アドレスによって指定される第1の管理単位によって前記ブロックが分割されたメインメモリ領域と、論理アドレスによって指定され前記第1の管理単位よりも小さな第2の管理単位によって前記ブロックが分割されたキャッシュ領域とを含み、前記制御部は、前記不揮発性メモリ内において前記メインメモリ領域の前記ブロック数と前記キャッシュ領域の前記ブロック数とを動的に変更することを特徴とする。 A memory system according to an embodiment of the present invention includes a floating gate, and a plurality of electrically erasable, writable and readable memory cells are arranged to form a page serving as a writing and reading unit. A plurality of pages are arranged to form a block as an erasing unit, and a nonvolatile memory in which the plurality of blocks are arranged and data to be written to or read from the nonvolatile memory are temporarily stored. A main memory in which the block is divided by a first management unit specified by a logical address. The main memory includes: a random access memory that controls the random access memory; and a control unit that controls the random access memory. An area and a second smaller than the first management unit specified by the logical address A cache area in which the block is divided by a logical unit, and the control unit dynamically changes the number of blocks in the main memory area and the number of blocks in the cache area in the nonvolatile memory. It is characterized by.
本発明によるメモリシステムは、NAND型フラッシュメモリのアクセス回数による劣化を回避することができる。 The memory system according to the present invention can avoid deterioration due to the number of accesses of the NAND flash memory.
以下、図面を参照して本発明に係る実施形態を説明する。本実施形態は、本発明を限定するものではない。 Embodiments according to the present invention will be described below with reference to the drawings. This embodiment does not limit the present invention.
フラッシュEEPROM型不揮発性メモリは、主にNOR型とNAND型とに分けられる。NOR型フラッシュメモリは読出し動作が高速であり、読出し可能回数が1013乗回程度と多い。よって、NOR型フラッシュメモリは、携帯機器の命令コードの記憶装置として用いられる。しかし、NOR型フラッシュメモリは、書込みの実効バンド幅が小さく、ファイルの記録には適していない。 Flash EEPROM type nonvolatile memories are mainly classified into a NOR type and a NAND type. The NOR type flash memory has a high-speed read operation, and the number of possible read operations is as high as about 10 13 times. Therefore, the NOR flash memory is used as a storage device for instruction codes of portable devices. However, the NOR flash memory has a small effective write bandwidth and is not suitable for file recording.
一方、NAND型フラッシュメモリは、アクセス時間が50μs程度と遅い。しかし、NAND型フラッシュメモリは、NOR型フラッシュメモリに比べて集積度が高く、かつ、バーストリード(Burst Read)が可能である。NAND型フラッシュメモリは、データプログラム(書込み)時間が800μs、データ消去時間が1ms程度と遅い。しかし、NAND型フラッシュメモリは、一度に消去可能なビット数が多く、かつ、バーストモードでデータを書き込むことができ、一度に多数のビットをプログラムすることができる。従って、NAND型フラッシュメモリは、実効バンド幅が大きいメモリである。このような実効バンド幅が大きいNAND型フラッシュメモリは、上述のメモリーカード、USBメモリ、SSD等のファイルメモリに適している。 On the other hand, the NAND flash memory has a slow access time of about 50 μs. However, the NAND flash memory has a higher degree of integration than the NOR flash memory and can perform burst read. The NAND flash memory has a slow data program (write) time of 800 μs and a data erase time of about 1 ms. However, the NAND flash memory has a large number of bits that can be erased at one time, can write data in a burst mode, and can program many bits at one time. Accordingly, the NAND flash memory is a memory having a large effective bandwidth. Such a NAND flash memory having a large effective bandwidth is suitable for a file memory such as the above-mentioned memory card, USB memory, or SSD.
以下の本実施形態は、NAND型フラッシュメモリを用いたメモリシステムである。 The following embodiment is a memory system using a NAND flash memory.
図1は、本発明に係る実施形態に従ったメモリシステムの構成を示すブロック図である。本実施形態によるメモリシステムは、NAND型フラッシュメモリ10と、RAM(Random Access Memory)20と、NAND型フラッシュメモリを制御するNAND制御回路30と、RAMを制御するRAM制御回路40と、MPU(Micro Processing Unit)50とを備えている。本実施形態によるNAND型フラッシュメモリは、例えば、パーソナルコンピュータに内蔵されたSSDである。尚、特許請求の範囲では、NAND制御回路30、RAM制御回路40およびMPU50をまとめて制御部と呼んでいる。
FIG. 1 is a block diagram showing a configuration of a memory system according to an embodiment of the present invention. The memory system according to the present embodiment includes a
NAND型フラッシュメモリ(以下、単にメモリ10という)は、比較的大きな容量のデータを格納するメインメモリ領域と、比較的小さな容量のデータを格納するキャッシュ領域とを有する。RAM20は、メモリ10の一部のブロックのデータを消去したときに有効なデータの退避領域として機能する。RAM20は、さらに、メモリ10へ書き込みデータあるいはメモリ10から読み出したデータを一時的に記憶するキャッシュ機能を有する。
The NAND flash memory (hereinafter simply referred to as the memory 10) has a main memory area that stores a relatively large amount of data and a cache area that stores a relatively small amount of data. The
MPU50は、NAND制御回路30およびRAM制御回路40に対して命令を送り、これらを制御する。MPU50は、メモリ10内のキャッシュ領域のブロック数等を管理する。
The MPU 50 sends commands to the
図2は、メモリ10のメインメモリ領域12とキャッシュ領域11とを示す概念図である。メインメモリ領域12は、比較的大きな第1の管理単位によってブロックが分割されているメモリ領域である。第1の管理単位は、メモリ10の論理アドレスごとに割り当てられたメモリ単位であり、メモリ単位ごとにデータは管理される。キャッシュ領域11は、比較的小さな第2の管理単位によってブロックが分割されたメモリ領域である。第2の管理単位は、メモリ10の論理アドレスごとに割り当てられたメモリ単位であるが、第1の管理単位よりもメモリ容量の小さなメモリ単位である。従って、キャッシュ領域11におけるブロックは、メインメモリ領域12のブロックよりも細分化されており、小容量のデータを格納するのに適している。メモリ10においてキャッシュ領域11とメインメモリ領域12との違いは、管理単位のデータ容量の相違である。
FIG. 2 is a conceptual diagram showing the
図3は、NAND型フラッシュメモリの一例としてのNAND型EEPROMのセルストリングを示す平面図である。図4は、NAND型EEPROMの2つのメモリセルの断面図である。図5は、図3に示すセルストリングの等価回路図である。セルストリングは、複数のメモリセルを直列に接続して形成されており、直列接続されたメモリセルの両端に設けられた選択トランジスタSTを介してソース線SLまたはビット線BLに接続されている。ビット線コンタクトおよびソース線コンタクトは、セルストリングに対して1つずつしか設けられていない。また、メモリセルはワード線とビット線との交点に1個ずつ配置される。このため、NAND型EEPROMは、NOR型EEPROMに比べて高集積化に適している。図4に示すように、各メモリセルは、基板上にゲート絶縁膜を介して電気的に浮遊状態のフローティングゲートFGを有する。フローティングゲートFG上には、ゲート絶縁膜を介してコントロールゲート(ワード線WL)が設けられている。コントロールゲートを制御することによって、フローティングゲートに電荷を蓄積あるいはフローティングゲートから電荷を放出する。これにより、メモリセルは、データを記憶または消去することができる。 FIG. 3 is a plan view showing a cell string of a NAND type EEPROM as an example of a NAND type flash memory. FIG. 4 is a cross-sectional view of two memory cells of a NAND type EEPROM. FIG. 5 is an equivalent circuit diagram of the cell string shown in FIG. The cell string is formed by connecting a plurality of memory cells in series, and is connected to a source line SL or a bit line BL via selection transistors ST provided at both ends of the memory cells connected in series. Only one bit line contact and one source line contact are provided for each cell string. One memory cell is arranged at the intersection of the word line and the bit line. For this reason, the NAND type EEPROM is more suitable for higher integration than the NOR type EEPROM. As shown in FIG. 4, each memory cell has a floating gate FG in an electrically floating state on a substrate via a gate insulating film. On the floating gate FG, a control gate (word line WL) is provided via a gate insulating film. By controlling the control gate, charge is accumulated in or released from the floating gate. Thereby, the memory cell can store or erase data.
図6は、メモリブロックの一例を示す回路図である。1回の消去を行うメモリ単位は、ビット線BL方向でみるとメモリセルブロック単位であり、ワード線WL方向でみると、1つのMat全部(WL0〜WL7)である。従って、本実施形態では、消去ブロック単位のメモリ容量は、512KB程度となる。この消去単位をブロックと呼ぶ。書込み単位/読出し単位(ページ)は、ブロック中の1つのワード線WLに接続されたメモリセルのうち、1本おきのビット線(偶数ビット線または奇数ビット線)に接続されたメモリセルである。従って、1つのワード線WLに接続されたメモリセルは2ページからなる。 FIG. 6 is a circuit diagram illustrating an example of a memory block. The memory unit to be erased once is a memory cell block unit when viewed in the bit line BL direction, and one Mat (WL0 to WL7) when viewed in the word line WL direction. Therefore, in this embodiment, the memory capacity in units of erase blocks is about 512 KB. This erase unit is called a block. A write unit / read unit (page) is a memory cell connected to every other bit line (even bit line or odd bit line) among memory cells connected to one word line WL in the block. . Therefore, a memory cell connected to one word line WL consists of two pages.
図7(A)〜図7(C)は、それぞれPC(Personal Computer)の論理アドレス、メモリ10の論理アドレスおよびメモリ10の物理アドレスを示した概念図である。図7(A)に示すPCの論理アドレス(以下、PC論理アドレスともいう)は、0〜8n−1で表されている。nは2以上の整数である。図7(B)に示すメモリ10の論理アドレス(以下、SSD論理アドレスともいう)は、メインメモリ領域12の論理アドレス0〜8(m−1)と、キャッシュ領域11の論理アドレス8m〜8p−1とを含む。mは2以上の整数であり、pはm+1以上の整数である。図7(C)に示すメモリ10の物理アドレス(以下、SSD物理アドレスともいう)は、0〜rで表されており、各ブロックごとに割当てられている。rは正整数である。
FIG. 7A to FIG. 7C are conceptual diagrams showing a logical address of a PC (Personal Computer), a logical address of the
メインメモリ領域12の管理単位は、例えば、(1/2)ブロックである。1ブロックが512Kビットのデータを格納可能とすれば、メインメモリ領域12の管理単位は、256Kビットのメモリ容量となる。キャッシュ領域11の管理単位は、例えば、(1/16)ブロックである。1ブロックが512Kビットのデータを格納可能とすれば、キャッシュ領域11の管理単位は、64Kビットのメモリ容量となる。本実施形態では、PC論理アドレスの1アドレスに含まれるデータの容量はキャッシュ領域11の管理単位と同じ64Kビットとする。
The management unit of the
キャッシュ領域11の管理単位のメモリ容量は、メインメモリ領域12の管理単位のそれよりも小さい。このため、図7(B)では、キャッシュ領域11における1アドレスの領域を、メインメモリ領域12におけるそれよりも小さく(薄く)示している。各ブロックは、それぞれに対応するSSD論理アドレスによってメインメモリ領域12とキャッシュ領域11とに分けられている。PC論理アドレスおよびSSD物理アドレスでは、メインメモリ領域12とキャッシュ領域11とを区別することができない。なお、図7(C)では、メインメモリ領域12とキャッシュ領域11とを明確に区別可能とするために、メインメモリ領域12のブロックをMSと示し、キャッシュ領域11のブロックをCaと示している。
The memory capacity of the management unit of the
キャッシュ領域11には、例えば、頻繁にアクセスされる小容量データ(アクセス確率の高い小容量データ)が格納される。一般に小容量データはキャッシュ領域に格納されるので、キャッシュ領域11の管理単位は、メインメモリ領域12の管理単位よりも細分化されている。
The
メインメモリ領域12の管理単位は(1/2)ブロックであるため、その一部のデータを更新する場合であっても、(1/2)ブロック全体を更新する必要がある。これに対し、キャッシュ領域11の管理単位は、(1/16)ブロックであるため、データの更新は、(1/16)ブロックの単位で実行することができる。キャッシュ領域11の管理単位が小さいと、不要な更新領域を減らすことができる。また、キャッシュ領域11に小容量かつアクセス確率の高いデータを格納しておくことによって、メインメモリ領域12の更新回数を低減することができる。これは、管理単位の大きいメインメモリ領域12の消去回数/書込み回数を低減することを意味し、メモリ10の劣化の抑制につながる。即ち、本実施形態では、メインメモリ領域12の管理単位よりも小さな管理単位を有するキャッシュ領域11をメモリ10内に設けることによって、メモリ10の寿命を長くすることができる。尚、メインメモリ領域12およびキャッシュ領域11の管理単位は、それぞれ(1/2)ブロックおよび(1/16)ブロックに限定しない。メインメモリ領域12およびキャッシュ領域11の管理単位は、それぞれ(1/m)ブロックおよび(1/n)ブロック(n>m、mおよびnは正数)であればよい。
Since the management unit of the
図8は、PC論理アドレスとSSD論理アドレスとの間の論論変換表を示す。論論変換表は、PC論理アドレスに対応するSSD論理アドレスを示すテーブルである。メインメモリ領域12のSSD論理アドレスは、(1/2)ブロック、即ち、8つのPC論理アドレスに対応する。従って、メインメモリ領域12における論論変換表は、各SSD論理アドレスに対応する8つのPC論理アドレスのうち先頭のアドレスのみを格納する。例えば、メインメモリ領域12のSSD論理アドレス“0”は、PC論理アドレス8〜15に対応する。しかし、論論変換表では、PC論理アドレス8〜15の先頭アドレスであるPC論理アドレス“8”のみが格納されている。尚、“0xFF”は、16進数のFFを示し、空き領域(空きアドレス)を意味する。
FIG. 8 shows a logic conversion table between PC logical addresses and SSD logical addresses. The logic conversion table is a table indicating SSD logical addresses corresponding to PC logical addresses. The SSD logical address of the
キャッシュ領域11では、SSD論理アドレスの管理単位とPC論理アドレスの管理単位とが等しく(1/16)ブロックである。このため、キャッシュ領域11の論論変換表では、SSD論理アドレスとPC論理アドレスとが1対1に対応している。
In the
図9は、SSD論理アドレスとSSD物理アドレスとの間の論物変換表を示す。論物変換表は、SSD論理アドレスに対応するSSD物理アドレスを示すテーブルである。論論変換表および論物変換表を参照することによって、PC論理アドレスで示されたデータがどのメモリ領域に格納されているかが分かる。論論変換表および論物変換表は、例えば、図1に示すRAM20に格納されている。
FIG. 9 shows a logical-physical conversion table between the SSD logical address and the SSD physical address. The logical-physical conversion table is a table indicating an SSD physical address corresponding to the SSD logical address. By referring to the logical / logical conversion table and the logical / physical conversion table, it is possible to know in which memory area the data indicated by the PC logical address is stored. The logic conversion table and the logic conversion table are stored in, for example, the
論論変換表で示すPC論理アドレスとSSD論理アドレスとの対応関係は、固定されているものではなく、後述のようにメモリの空き領域へデータが書き込まれるごとに更新される。一方、論物変換表で示すSSD論理アドレスとSSD物理アドレスとの対応関係は、基本的に更新はされない。しかし、論物変換表はウェアレベリング等により変更される場合はある。 The correspondence relationship between the PC logical address and the SSD logical address shown in the logic conversion table is not fixed, and is updated each time data is written to a free area of the memory as will be described later. On the other hand, the correspondence relationship between the SSD logical address and the SSD physical address shown in the logical-physical conversion table is basically not updated. However, the logical-physical conversion table may be changed due to wear leveling or the like.
(読出し動作)
図10は、本実施形態によるメモリ10の読出し動作を示すフロー図である。図6〜図10を参照して、データ読出し動作を説明する。読出し動作では、RAM制御回路40は、読出し対象のPC論理アドレスを、キャッシュ領域11の論論変換表において検索する(S10)。読出し対象のPC論理アドレスがキャッシュ領域11の論論変換表にある場合、RAM制御回路40は、読出し対象のPC論理アドレスに対応するSSD論理アドレスを、図9に示す論物変換表において検索する(S20)。NAND制御回路30は論物変換表において検索されたSSD物理アドレスに基づいてメモリ10からデータを読み出す(S30)。読出し対象のPC論理アドレスがキャッシュ領域11の論論変換表にある場合、メインメモリ領域12の論論変換表の検索は実行されない。
(Read operation)
FIG. 10 is a flowchart showing the read operation of the
読出し対象のPC論理アドレスがキャッシュ領域11の論論変換表に無い場合に、RAM制御回路40は、読出し対象のPC論理アドレスを、メインメモリ領域12の論論変換表において検索する(S40)。RAM制御回路40は、論論変換表において検索されたSSD論理アドレスを、図9に示す論物変換表において検索する(S50)。NAND制御回路30は論物変換表において検索されたSSD論理アドレスに対応するSSD物理アドレスに基づいてメモリ10からデータを読み出す(S60)。キャッシュ領域11には、アクセス可能性の高いデータが格納されているため、RAM制御回路40は、キャッシュ領域11を最初に検索し、次に、メインメモリ領域12を検索する。
When the PC logical address to be read does not exist in the logic conversion table of the
具体例として、例えば、PC論理アドレス“4”を読み出す場合、RAM制御回路40は、まず、PC論理アドレス“4”をキャッシュ領域11の論論変換表において検索する。図8に示す例では、PC論理アドレス“4”のデータは、SSD論理アドレス“8p−2”に対応するメモリ領域に格納されている。次に、RAM制御回路40は、SSD論理アドレス“8p−2”に対応するSSD物理アドレスを論物変換表において検索する。図9に示す例では、SSD論理アドレス“8p−2”に対応するSSD物理アドレスは、“1”である。
As a specific example, for example, when reading the PC logical address “4”, the
ここで、キャッシュ領域11のSSD論理アドレス(管理単位)は、上述の通り1つのブロックに対して16個のアドレスが割当てられている。つまり、1ブロックを16個の区分に分けた場合に、キャッシュ領域11のSSD論理アドレス(管理単位)は、その1つの区分に対応する。従って、MPU50は、SSD論理アドレス“8p−2”がSSD物理アドレス“1”のブロック内の16区分のうち何番目の区分に該当するかを計算する必要がある。ブロック内での格納区分は、SSD論理アドレス(8p−2)を16で除算した余りから判明する。例えば、(8p−2)/16の余りが14である場合、SSD物理アドレス“1”の先頭の区分を0として14番目の区分がSSD論理アドレス“8p−2”に該当する。そこで、NAND制御回路30は、SSD物理アドレス“1”の14番目の区分(そのブロックの先頭区分を0とする)からデータを読み出す。
Here, as the SSD logical address (management unit) of the
他の具体例として、例えば、PC論理アドレス“9”を読み出す場合、RAM制御回路40は、まず、PC論理アドレス“9”をキャッシュ領域11の論論変換表において検索する。図8に示すPC論理アドレス“9”に対応するSSD論理アドレスは無い。従って、次に、RAM制御回路40は、メインメモリ領域12の論論変換表を検索する。
As another specific example, for example, when reading the PC logical address “9”, the
ここで、メインメモリ領域12のSSD論理アドレス(管理単位)は、8つずつのPC論理アドレスに対応しており、論論変換表は、その先頭のPC論理アドレスのみ格納している。従って、MPU50は、SSD論理アドレスを8で除算した整数部分に8を乗算した結果からSSD論理アドレスを特定する。例えば、MPU50は、除算9/8を計算し、その整数部分1に8を乗算する。MPU50は、その結果として“8”を得る。従って、RAM制御回路40は、論論変換表からPC論理アドレス“8”に対応するSSD論理アドレスを検索する。これにより、PC論理アドレス“8”に対応するSSD論理アドレス“0”を得る。PC論理アドレス“9”で示されるデータは、SSD論理アドレス“0”に対応するメモリ領域に格納されていることがわかる。
Here, the SSD logical address (management unit) of the
さらに、RAM制御回路40は、論物変換表からSSD論理アドレス“0”に対応するSSD物理アドレスを検索する。これにより、SSD論理アドレス“0” に対応するSSD物理アドレス“q+1”を得る。PC論理アドレス“9”で示されるデータは、SSD物理アドレス“q+1”に対応するメモリ領域に格納されていることがわかる。
Further, the
ここで、MPU50は、PC論理アドレス“9”がSSD物理アドレス“q+1”のブロック内の16区分のうち何番目の区分に該当するかを計算する必要がある。ブロック内での格納区分は、PC論理アドレス“9”を8で除算した余りから判明する。この場合、余りは、1であるので、SSD物理アドレス“q+1”の先頭の区分を0として1番目の区分がPC論理アドレス“9”に該当する。そこで、NAND制御回路30は、SSD物理アドレス“q+1”の1番目の区分(そのブロックの先頭区分を0とする)からデータを読み出す。
Here, it is necessary for the
以上のように、キャッシュ領域11からデータを読み出す場合には、ブロック内における区分を特定するために、MPU50は、(SSD論理アドレス/16)の余りを算出する。メインメモリ領域12からデータを読み出す場合には、PC論理アドレスを特定するために、MPU50は、((PC論理アドレス/8の整数部分)*8)を算出し、ブロック内における区分を特定するために、MPU50は、(PC論理アドレス/8)の余りを算出する。
As described above, when data is read from the
(書込み動作)
図12は、本実施形態によるメモリ10の書込み動作を示すフロー図である。図6〜図9、図12を参照して、データ書込み動作を説明する。本実施形態では、メインメモリ領域12およびキャッシュ領域11ともに、追記書込み方式を用いてデータが書き込まれる。書込みデータの容量が所定値よりも大きい場合には、データは、メインメモリ領域12に書き込まれる。書込みデータの容量が所定値以下の場合には、データは、メインメモリ領域12に書き込まれる。以下、キャッシュ領域11への書込み動作を説明する。
(Write operation)
FIG. 12 is a flowchart showing a write operation of the
書込み動作では、RAM制御回路40は、キャッシュ領域11の論論変換表において空き領域を検索する(S11)。空き領域がキャッシュ領域11の論論変換表にある場合、RAM制御回路40は、その空き領域のSSD物理アドレスを、図9に示す論物変換表において検索する(S21)。NAND制御回路30は論物変換表において検索されたSSD物理アドレスに基づいてメモリ10へデータを書き込む(S31)。空き領域がキャッシュ領域11の論論変換表にある場合、RAM制御回路40は、メインメモリ領域12の論論変換表において空き領域を検索しない。空き領域がキャッシュ領域11の論論変換表に無い場合に、RAM制御回路40は、メインメモリ領域12の論論変換表において空き領域を検索する(S41)。RAM制御回路40は、メインメモリ領域12内の空き領域のSSD物理アドレスを、図9に示す論物変換表において検索する(S51)。NAND制御回路30は論物変換表において検索されたSSD物理アドレスに基づいてメモリ10へデータを書き込む(S61)。書込み後、RAM制御回路40は論論変換表を更新する(S71)。
In the write operation, the
具体例として、例えば、PC論理アドレス“9”を書き込む場合、RAM制御回路40は、まず、空き領域をキャッシュ領域11の論論変換表において検索する。図8に示す例では、空き領域(0xFF)は、SSD論理アドレス“8(p−1)”にある。次に、RAM制御回路40は、論物変換表からSSD論理アドレス“8p−1”に対応するSSD物理アドレスを検索する。図9に示す例では、SSD論理アドレス“8p−1”に対応するSSD物理アドレスは、“1”である。
As a specific example, for example, when the PC logical address “9” is written, the
次に、MPU50は、SSD論理アドレス“8p−1”がSSD物理アドレス“1”のブロック内の16区分のうち何番目の区分に該当するかを計算する。ブロック内の詳細な格納場所は、SSD論理アドレス(8p−2)を16で除算した余りから判明する。例えば、(8p−1)/16の余りが15である場合、SSD物理アドレス“1”の先頭の区分を0として15番目の区分(SSD物理アドレス“1”の最後の区分)がSSD論理アドレス“8p−1”に該当する。そこで、NAND制御回路30は、SSD物理アドレス“1”の最後の区分へデータを書き込む。
Next, the
データの書込み後、RAM制御回路40は、PC論理アドレス“9”をキャッシュ領域11の論論変換表において検索する。PC論理アドレス“9”がキャッシュ領域11の論論変換表に無い場合、RAM制御回路40は、図11に示すように、キャッシュ領域11の論論変換表におけるSSD論理アドレス“8p−1”に対応するPC論理アドレスを“0xFF”から“9”に更新する。
After the data is written, the
PC論理アドレス“9”がキャッシュ領域11の論論変換表にある場合、RAM制御回路40は、キャッシュ領域11の論論変換表において、既存のPC論理アドレス“9”を空きアドレス“0xFF”に更新し、かつ、SSD論理アドレス“8p−1”に対応するPC論理アドレスを“9”に更新する。尚、図11に示す具体例では、既存のPC論理アドレス“9”がキャッシュ領域11の論論変換表に無いので、RAM制御回路40は、SSD論理アドレス“8p−1”に対応するPC論理アドレスを“0xFF”から“9”に更新するのみである。
When the PC logical address “9” is in the logical area conversion table of the
例えば、もし、PC論理アドレス“9” に代えて、PC論理アドレス“4”をSSD論理アドレス“8p−1”に書き込んだ場合、PC論理アドレス“4”はキャッシュ領域11の論論変換表にある。よって、RAM制御回路40は、図13に示すように、キャッシュ領域11の論論変換表において、既存のPC論理アドレス“4”に対応するSSD論理アドレス“8p−2”を空きアドレス“0xFF”に更新し、かつ、空きアドレスのSSD論理アドレス“8p−1”に対応するPC論理アドレスを“4”に更新する。このように、論論変換表のPC論理アドレスは更新されていく。
For example, if the PC logical address “4” is written to the SSD logical address “8p−1” instead of the PC logical address “9”, the PC logical address “4” is stored in the logic conversion table of the
(書込み動作:キャッシュ領域11がフル(full)場合)
図14は、本実施形態によるメモリ10の書込み動作(キャッシュ領域11がフル場合)を示すフロー図である。
(Write operation: When the
FIG. 14 is a flowchart showing a write operation (when the
キャッシュ領域11に空き領域が無く、フル状態の場合、キャッシュ領域11の既存のデータをメインメモリ領域12へコピーし、キャッシュ領域11のアドレスを空ける必要がある。図15は、図13における更新後の論論変換表を示す。例えば、図15に示すキャッシュ領域11のSSD論理アドレス8m〜8m+15を空けるとする。SSD論理アドレス8m〜8m+15に対応するSSD物理アドレスは、図9に示す論物変換表から“q”であることが分かる。つまり、図7(C)に示す物理アドレス“q”で示されたブロック内のデータを移動させる。
When there is no free area in the
まず、RAM制御回路40は、SSD論理アドレス8m〜8m+15のうち先頭SSD論理アドレス8mに対応するPC論理アドレスをキャッシュ領域11の論論変換表から検索する(S12)。図15に示すキャッシュ領域11の論論変換表から、SSD論理アドレス8mに対応するPC論理アドレスは、“13”であることが分かる。
First, the
次に、RAM制御回路40は、PC論理アドレス“13”に対応するメインメモリ内のSSD論理アドレスを論論変換表から検索する(S22)。図15に示すメインメモリ領域12の論論変換表から、PC論理アドレス“13”に対応するメインメモリ内のSSD論理アドレスは、“0”に含まれていることが分かる。SSD論理アドレス“0”は、PC論理アドレス8〜15に対応するからである。
Next, the
次に、RAM制御回路40は、論論変換表において検索されたSSD論理アドレス“0”に対応するSSD物理アドレスを論物変換表から検索する(S32)。図9に示す論物変換表から、SSD論理アドレス“0”に対応するSSD物理アドレスは、“q+1”であることが分かる。
Next, the
メインメモリ領域12内において、空きブロックを検索する(S42)。例えば、RAM制御回路40が、論論変換表および論物変換表から空きブロックを検索する。SSD論理アドレス8(m−2)に対応するSSD物理アドレス“r”が空きブロックであるとする。
An empty block is searched in the main memory area 12 (S42). For example, the
この場合、NAND制御回路30は、メインメモリ領域12のSSD物理アドレス“q+1”で示されるブロック内のデータをSSD物理アドレス“r”のブロックへコピーする。このとき、図16に示すように、SSD物理アドレス“r”のPC論理アドレス“13”に対応する区分には、キャッシュ領域11のSSD物理アドレス“q”で示されるブロック内のPC論理アドレス“13”に対応する区分のデータがコピーされる(S52)。つまり、メインメモリ領域12のSSD物理アドレス“q+1” とキャッシュ領域11のSSD物理アドレス“q”で示されるブロックのPC論理アドレス“13”とをマージして、空きブロック(r)へコピーする。これは、通常、キャッシュ領域11のデータは、メインメモリ領域12のデータよりも新しいからである。
In this case, the
より詳細には、MPU50は、PC論理アドレス“13”を8で除算した余りを計算する。これにより、PC論理アドレス“13”がキャッシュ領域11のブロック内において5番目の区分(このブロックの最初の区分を0とする)に対応することが分かる。
More specifically, the
次に、論論変換表を更新する(S62)。より詳細には、RAM制御回路40は、図17に示すように、SSD論理アドレス“0”に対応するPC論理アドレス“8”を空きアドレス0xFFに更新する。RAM制御回路40は、SSD論理アドレス8mに対応するPC論理アドレス“13” を空きアドレス0xFFに更新する。さらに、図17では示さないが、SSD物理アドレス“r”に対応するPC論理アドレス(SSD論理アドレス8(m−2)に対応するPC論理アドレス)を“8”に更新する。これにより、SSD論理アドレス8mを空きアドレスにすることができる。
Next, the logic conversion table is updated (S62). More specifically, as shown in FIG. 17, the
ステップS12〜S62をSSD論理アドレス8m+1〜8m+15について繰り返す。これにより、SSD論理アドレス8m〜8m+15を空きアドレスにすることができる。
Steps S12 to S62 are repeated for SSD
RAM制御回路40がキャッシュ領域11の論論変換表において空きアドレスを検索する(S72)。空きアドレスであるSSD論理アドレス8m〜8m+15へデータを書き込む(S82)。
The
(書込み動作:メインメモリ領域12のデータ量が閾値を超えた場合)
図18は、本実施形態によるメモリ10の書込み動作(メインメモリ領域12のデータ量が閾値を超えた場合)を示すフロー図である。
(Write operation: When the amount of data in the
FIG. 18 is a flowchart showing the write operation of the
メインメモリ領域12が追記書込み方式である場合には、メインメモリ領域12に多くのデータが追記的に蓄積される(S13)。そのデータ量が所定の閾値を超えた場合、キャッシュ領域11のSSD論理アドレスのうち空きアドレスを検索対象から除外することによって、RAM制御回路40が検索する範囲を狭くする(S23)。論論変換表のキャッシュ領域11の検索範囲を狭くすることによって、キャッシュ領域11のSSD論理アドレスが実質的に減少する。これにより、キャッシュ領域11として用いられるブロック数が少なくなり、メインメモリ領域12として用いられるブロック数が相対的に多くなる。
If the
キャッシュ領域11がフル状態である場合には、上述のすれS12〜S82ようにキャッシュ領域11の一部のデータをメインメモリ領域12へ移動する。これにより、空きアドレスとなったキャッシュ領域11のSSD論理アドレスを検索対象から除外する(S33)。キャッシュ領域11として用いられるブロックが少なくなり、メインメモリ領域12として用いられるブロックが相対的に多くなる。
When the
検索対象から除外するSSD論理アドレスの数は、少なくともメインメモリ領域12の管理単位に対応する数(例えば、8アドレスずつ)である。より好ましくは、検索対象から除外するSSD論理アドレスの数は、ブロックに対応する数(16の倍数)である。管理が容易になるからである。メインメモリ領域12のデータ量の閾値は、複数個設けられていてもよい。これにより、キャッシュ領域11を段階的にメインメモリ領域12へ変更することができる。
The number of SSD logical addresses excluded from the search target is a number corresponding to at least the management unit of the main memory area 12 (for example, 8 addresses each). More preferably, the number of SSD logical addresses to be excluded from the search target is a number corresponding to a block (a multiple of 16). This is because management becomes easier. A plurality of data amount threshold values in the
図19〜図22は、本実施形態によるメモリ10のキャッシュ領域11およびメインメモリ領域12の変化を示す概念図である。図19に示すように、メインメモリ領域12内に蓄積されるデータ量が少ないとき、キャッシュ領域11を増大させる。即ち、キャッシュ領域11のSSD論理アドレスの検索範囲を大きくする。これにより、RAM制御回路40が、キャッシュ領域11において多くのSSD論理アドレスを検索するため、キャッシュ領域11の容量が必然的に大きくなる。このとき、ユーザ使用可能領域の一部をキャッシュ領域11として使用してよい。
19 to 22 are conceptual diagrams showing changes in the
図20に示すように、メインメモリ領域12内のデータ量が閾値を超えた場合、図18を参照して上述したように、キャッシュ領域11を低減させる。このとき、図20に示すように、複数の閾値を用いてデータ量に応じて段階的にキャッシュ領域11を減少させてもよい。あるいは、図21に示すように、データ量が1つの閾値を超えたときに、キャッシュ領域11であったユーザ使用可能領域を全てメインメモリ領域12へ変更してもよい。
As shown in FIG. 20, when the amount of data in the
メインメモリ領域12がフル状態となった場合、図22に示すように、キャッシュ領域11をメインメモリ領域12へ変更してもよい。即ち、キャッシュ領域11のSSD論理アドレスの検索範囲をさらに小さくする。これにより、メインメモリ領域12は、ユーザ使用可能領域を超えてさらに大きな容量のデータを格納することができる。このようにキャッシュ領域11の一部をメインメモリ領域12として使用すれば、消去可能な無効データが多くなる。これにより、消去可能な空きブロックが生じる確率が大きくなる。その結果、後述のように、データの整理動作の頻度を減らすことができるので、メモリ10の寿命をより長くすることができる。
When the
一般に、メインメモリ領域12が管理単位での追記書込み方式を採用している場合、データ量が或る所定量(ユーザ使用可能量など)を超えると、メインメモリ領域12のデータを整理する必要がある。データの整理動作は、有効なデータを他のメモリ領域にコピーし、無効なデータを消去する動作である。データの整理動作は、単なるブロック単位での消去とは異なり、有効なデータを他のメモリ領域にコピーする必要がある。従って、データの整理動作は可及的に減少させることが好ましい。また、頻繁に整理動作を実行すると、メモリ10が短期間に劣化してしまう。
In general, when the
本実施形態では、メインメモリ領域12のデータが所定量を超えたとき、キャッシュ領域11の一部をメインメモリ領域12に割り当てる。これにより、メインメモリ領域12の追記領域が増大するので、整理動作の開始を遅らせ、整理動作の周期が長くなる。整理動作の周期を長期化することによって、データ消去および書込みの頻度が低下するので、メモリ10の劣化を抑制することができる。さらに、整理動作の周期が長くなると、それだけ無効になるデータが多くなる。無効データが多いことは、整理動作において、コピーの必要な有効データが少ないことを意味する。データのコピーが少ないと、整理動作においてデータの消去量を低減することができる。また、無効データが多いことは、ブロック単位でデータを消去する確率が高くなる。消去ブロックが多いと、それだけ、整理動作の周期をさらに長くすることができる。特に、メインメモリ領域12の管理単位が小さい場合、整理動作で整理されるデータ量が増える。よって、メインメモリ領域12の管理単位が小さい場合に、上記の効果は大きい。
In the present embodiment, when the data in the
メインメモリ領域12のデータ量が閾値以下になった場合に、キャッシュ領域11の論論変換表の検索領域を増大させてもよい。これにより、キャッシュ領域11として用いられるブロック数が多くなり、メインメモリ領域12として用いられるブロック数が少なくなる。
When the amount of data in the
このように、本実施形態では、NAND制御回路30は、上述のように、キャッシュ領域11のデータ量および/またはメインメモリ領域12のデータ量に応じてメインメモリ領域12のブロック数とキャッシュ領域11のブロック数とを動的に変更させる。これにより、整理動作の周期を長期化し、メモリ10の劣化を抑制することができる。その結果、メモリ10の寿命を従来よりも長くすることができる。
As described above, in this embodiment, the
10…不揮発性メモリ
12…メインメモリ領域12
11…キャッシュ領域11
20…ランダムアクセスメモリ
30…NAND制御回路
40…RAM制御回路
50…MPU
10: Non-volatile memory 12:
11:
20 ...
Claims (5)
前記不揮発性メモリへ書き込むデータあるいは前記不揮発性メモリから読み出したデータを一時的に記憶するランダムアクセスメモリと、
前記不揮発性メモリおよび前記ランダムアクセスメモリを制御する制御部とを備え、
前記不揮発性メモリは、論理アドレスによって指定される第1の管理単位によって前記ブロックが分割されたメインメモリ領域と、論理アドレスによって指定され前記第1の管理単位よりも小さな第2の管理単位によって前記ブロックが分割されたキャッシュ領域とを含み、
前記制御部は、前記不揮発性メモリ内において前記メインメモリ領域の前記ブロック数と前記キャッシュ領域の前記ブロック数とを動的に変更することを特徴とするメモリシステム。 A plurality of memory cells having a floating gate and electrically erasing, writing and reading data are arranged to form a page serving as a unit for writing and reading, and a block including a plurality of pages arranged as an erasing unit is provided. A nonvolatile memory in which a plurality of the blocks are arranged;
A random access memory for temporarily storing data to be written to the nonvolatile memory or data read from the nonvolatile memory;
A controller that controls the nonvolatile memory and the random access memory;
The nonvolatile memory includes a main memory area in which the block is divided by a first management unit specified by a logical address, and a second management unit that is specified by a logical address and is smaller than the first management unit. A cache area into which blocks are divided, and
The control unit dynamically changes the number of blocks in the main memory area and the number of blocks in the cache area in the nonvolatile memory.
前記メインメモリ領域に格納されたデータ量が所定値より多い場合に、前記制御部は、検索する前記第1の論理アドレス数を減少させることによって、前記キャッシュ領域の前記ブロック数を減少させることを特徴とする請求項2に記載のメモリシステム。 The controller searches for a first logical address assigned to the second management unit in order to store write data received from outside the nonvolatile memory in the cache area;
When the amount of data stored in the main memory area is larger than a predetermined value, the control unit reduces the number of blocks in the cache area by reducing the number of first logical addresses to be searched. The memory system according to claim 2, wherein:
前記キャッシュ領域の一部は前記メインメモリ領域の追記領域として書き込まれることを特徴とする請求項1に記載のメモリシステム。 In the main memory area, data is written to a vacant memory area by a write-once method,
2. The memory system according to claim 1, wherein a part of the cache area is written as an additional recording area of the main memory area.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008061655A JP4558054B2 (en) | 2008-03-11 | 2008-03-11 | Memory system |
US12/401,130 US8484432B2 (en) | 2008-03-11 | 2009-03-10 | Memory system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008061655A JP4558054B2 (en) | 2008-03-11 | 2008-03-11 | Memory system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009217630A true JP2009217630A (en) | 2009-09-24 |
JP4558054B2 JP4558054B2 (en) | 2010-10-06 |
Family
ID=41189392
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008061655A Expired - Fee Related JP4558054B2 (en) | 2008-03-11 | 2008-03-11 | Memory system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4558054B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012166304A3 (en) * | 2011-05-31 | 2013-01-24 | Micron Technology, Inc. | Dynamic memory cache size adjustment in a memory device |
JP2013114679A (en) * | 2011-11-30 | 2013-06-10 | Samsung Electronics Co Ltd | Memory system including wear level control logic |
JP2018206377A (en) * | 2017-05-30 | 2018-12-27 | シーゲイト テクノロジー エルエルシーSeagate Technology LLC | Data storage device with rewritable in-place memory |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007094764A (en) * | 2005-09-29 | 2007-04-12 | Toshiba Corp | Memory system |
JP2007156633A (en) * | 2005-12-01 | 2007-06-21 | Sony Corp | Memory device and memory control method |
JP2007179546A (en) * | 2005-12-27 | 2007-07-12 | Samsung Electronics Co Ltd | Storage device using nonvolatile memory as cache, and operation method therefor |
-
2008
- 2008-03-11 JP JP2008061655A patent/JP4558054B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007094764A (en) * | 2005-09-29 | 2007-04-12 | Toshiba Corp | Memory system |
JP2007156633A (en) * | 2005-12-01 | 2007-06-21 | Sony Corp | Memory device and memory control method |
JP2007179546A (en) * | 2005-12-27 | 2007-07-12 | Samsung Electronics Co Ltd | Storage device using nonvolatile memory as cache, and operation method therefor |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012166304A3 (en) * | 2011-05-31 | 2013-01-24 | Micron Technology, Inc. | Dynamic memory cache size adjustment in a memory device |
JP2013114679A (en) * | 2011-11-30 | 2013-06-10 | Samsung Electronics Co Ltd | Memory system including wear level control logic |
JP2018206377A (en) * | 2017-05-30 | 2018-12-27 | シーゲイト テクノロジー エルエルシーSeagate Technology LLC | Data storage device with rewritable in-place memory |
Also Published As
Publication number | Publication date |
---|---|
JP4558054B2 (en) | 2010-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8484432B2 (en) | Memory system | |
JP5728672B2 (en) | Hybrid memory management | |
US9104549B2 (en) | Data storage device and method for flash block management | |
KR101343237B1 (en) | Memory block selection | |
US7711892B2 (en) | Flash memory allocation for improved performance and endurance | |
US8055873B2 (en) | Data writing method for flash memory, and controller and system using the same | |
JP5612514B2 (en) | Nonvolatile memory controller and nonvolatile storage device | |
US8966209B2 (en) | Efficient allocation policies for a system having non-volatile memory | |
US10991422B2 (en) | Data storage device using a host memory buffer for single-level cell storage and control method for non-volatile memory | |
US20100125696A1 (en) | Memory Controller For Controlling The Wear In A Non-volatile Memory Device And A Method Of Operation Therefor | |
US10740013B2 (en) | Non-volatile data-storage device with spare block pools using a block clearing method | |
WO2014132346A1 (en) | Semiconductor storage | |
JP2008181380A (en) | Memory system, and method for controlling the same | |
KR20170035155A (en) | Memory Controller, Non-volatile Memory System and Operating Method thereof | |
US9122586B2 (en) | Physical-to-logical address map to speed up a recycle operation in a solid state drive | |
KR20090117934A (en) | Memory system | |
US10073771B2 (en) | Data storage method and system thereof | |
JPWO2009096180A1 (en) | MEMORY CONTROLLER, NONVOLATILE STORAGE DEVICE, AND NONVOLATILE STORAGE SYSTEM | |
US10929303B2 (en) | Data storage device utilizing virtual blocks to improve performance and data storage method thereof | |
KR101403922B1 (en) | Apparatus and method for data storing according to an access degree | |
US11334272B2 (en) | Memory system and operating method thereof | |
KR100845552B1 (en) | Method for address mapping in Flash Translation LayerFTL | |
US20170285953A1 (en) | Data Storage Device and Data Maintenance Method thereof | |
JP5494086B2 (en) | Nonvolatile storage device and nonvolatile memory controller | |
JP4558054B2 (en) | Memory system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100302 |
|
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: 20100622 |
|
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: 20100720 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4558054 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130730 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |