JP2009217630A - Memory system - Google Patents

Memory system Download PDF

Info

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
Application number
JP2008061655A
Other languages
Japanese (ja)
Other versions
JP4558054B2 (en
Inventor
Kosuke Hatsuda
田 幸 輔 初
Daizaburo Takashima
島 大三郎 高
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2008061655A priority Critical patent/JP4558054B2/en
Priority to US12/401,130 priority patent/US8484432B2/en
Publication of JP2009217630A publication Critical patent/JP2009217630A/en
Application granted granted Critical
Publication of JP4558054B2 publication Critical patent/JP4558054B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a memory system, capable of avoiding deterioration of a NAND flash memory by the number of accesses. <P>SOLUTION: The memory system comprises: a nonvolatile memory including a plurality of blocks disposed therein; a random access memory temporarily storing data to be written to the nonvolatile memory or data read from the nonvolatile memory; and a control part controlling the nonvolatile memory and the random access memory. The nonvolatile memory includes a main memory area in which the blocks are divided by a first management unit designated by a logic address and a cache area in which the blocks are divided by a second management unit designated by a logic address and smaller than the first management unit, and the control part dynamically changes the block number in the main memory area and the block number in the cache area within the nonvolatile memory. <P>COPYRIGHT: (C)2009,JPO&INPIT

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型フラッシュメモリのデータは、10乗回程度の読出し回数、書込み回数、あるいは、消去回数で劣化する。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を確保することは困難である。
特開平10−154101号公報
It is conceivable to suppress the deterioration of the NAND flash memory by using a RAM such as DRAM or FeRAM as a buffer or cache of the NAND flash memory. However, in recent years, the NAND-type flash memory for SSDs has a large capacity, and it is difficult to secure a large-capacity RAM so as to suppress such deterioration of the NAND-type flash memory.
JP-A-10-154101

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 flash memory 10, a RAM (Random Access Memory) 20, a NAND control circuit 30 that controls the NAND flash memory, a RAM control circuit 40 that controls the RAM, and an MPU (Micro Processing Unit) 50. The NAND flash memory according to the present embodiment is, for example, an SSD built in a personal computer. In the claims, the NAND control circuit 30, the RAM control circuit 40, and the MPU 50 are collectively referred to as a control unit.

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 RAM 20 functions as an effective data saving area when data of some blocks of the memory 10 is erased. The RAM 20 further has a cache function for temporarily storing data written to the memory 10 or data read from the memory 10.

MPU50は、NAND制御回路30およびRAM制御回路40に対して命令を送り、これらを制御する。MPU50は、メモリ10内のキャッシュ領域のブロック数等を管理する。   The MPU 50 sends commands to the NAND control circuit 30 and the RAM control circuit 40 to control them. The MPU 50 manages the number of blocks in the cache area in the memory 10.

図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 main memory area 12 and the cache area 11 of the memory 10. The main memory area 12 is a memory area in which blocks are divided by a relatively large first management unit. The first management unit is a memory unit assigned for each logical address of the memory 10, and data is managed for each memory unit. The cache area 11 is a memory area in which blocks are divided by a relatively small second management unit. The second management unit is a memory unit allocated for each logical address of the memory 10, but is a memory unit having a smaller memory capacity than the first management unit. Therefore, the blocks in the cache area 11 are more subdivided than the blocks in the main memory area 12, and are suitable for storing a small amount of data. A difference between the cache area 11 and the main memory area 12 in the memory 10 is a difference in data capacity of a management unit.

図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 memory 10, and a physical address of the memory 10, respectively. The logical address of the PC shown in FIG. 7A (hereinafter also referred to as PC logical address) is represented by 0 to 8n-1. n is an integer of 2 or more. The logical addresses (hereinafter also referred to as SSD logical addresses) of the memory 10 shown in FIG. 7B are logical addresses 0 to 8 (m−1) of the main memory area 12 and logical addresses 8 m to 8 p− of the cache area 11. 1 is included. m is an integer of 2 or more, and p is an integer of m + 1 or more. A physical address (hereinafter also referred to as an SSD physical address) of the memory 10 shown in FIG. 7C is represented by 0 to r and is assigned to each block. r is a positive integer.

メインメモリ領域12の管理単位は、例えば、(1/2)ブロックである。1ブロックが512Kビットのデータを格納可能とすれば、メインメモリ領域12の管理単位は、256Kビットのメモリ容量となる。キャッシュ領域11の管理単位は、例えば、(1/16)ブロックである。1ブロックが512Kビットのデータを格納可能とすれば、キャッシュ領域11の管理単位は、64Kビットのメモリ容量となる。本実施形態では、PC論理アドレスの1アドレスに含まれるデータの容量はキャッシュ領域11の管理単位と同じ64Kビットとする。   The management unit of the main memory area 12 is, for example, (1/2) block. If one block can store 512 Kbit data, the management unit of the main memory area 12 has a memory capacity of 256 Kbit. The management unit of the cache area 11 is, for example, (1/16) block. If one block can store 512K bits of data, the management unit of the cache area 11 has a memory capacity of 64K bits. In the present embodiment, the capacity of data included in one address of the PC logical address is set to 64K bits, which is the same as the management unit of the cache area 11.

キャッシュ領域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 cache area 11 is smaller than that of the management unit of the main memory area 12. For this reason, in FIG. 7B, the area of one address in the cache area 11 is shown smaller (thinner) than that in the main memory area 12. Each block is divided into a main memory area 12 and a cache area 11 by an SSD logical address corresponding to each block. The main memory area 12 and the cache area 11 cannot be distinguished by the PC logical address and the SSD physical address. In FIG. 7C, in order to clearly distinguish the main memory area 12 and the cache area 11, the block of the main memory area 12 is indicated as MS, and the block of the cache area 11 is indicated as Ca. .

キャッシュ領域11には、例えば、頻繁にアクセスされる小容量データ(アクセス確率の高い小容量データ)が格納される。一般に小容量データはキャッシュ領域に格納されるので、キャッシュ領域11の管理単位は、メインメモリ領域12の管理単位よりも細分化されている。   The cache area 11 stores, for example, frequently accessed small capacity data (small capacity data with a high access probability). In general, since small-capacity data is stored in the cache area, the management unit of the cache area 11 is subdivided than the management unit of the main memory area 12.

メインメモリ領域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 main memory area 12 is (1/2) block, it is necessary to update the entire (1/2) block even when a part of the data is updated. On the other hand, since the management unit of the cache area 11 is (1/16) block, the data update can be executed in units of (1/16) block. If the management unit of the cache area 11 is small, unnecessary update areas can be reduced. In addition, by storing data with a small capacity and high access probability in the cache area 11, the number of updates of the main memory area 12 can be reduced. This means that the number of times of erasing / writing of the main memory area 12 having a large management unit is reduced, which leads to suppression of deterioration of the memory 10. That is, in the present embodiment, by providing the cache area 11 having a management unit smaller than the management unit of the main memory area 12 in the memory 10, the life of the memory 10 can be extended. The management units of the main memory area 12 and the cache area 11 are not limited to (1/2) blocks and (1/16) blocks, respectively. The management units of the main memory area 12 and the cache area 11 may be (1 / m) blocks and (1 / n) blocks (n> m, m and n are positive numbers), respectively.

図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 main memory area 12 corresponds to (1/2) block, that is, eight PC logical addresses. Accordingly, the logical-to-logical conversion table in the main memory area 12 stores only the top address among the eight PC logical addresses corresponding to each SSD logical address. For example, the SSD logical address “0” of the main memory area 12 corresponds to the PC logical addresses 8 to 15. However, in the logic conversion table, only the PC logical address “8” which is the head address of the PC logical addresses 8 to 15 is stored. Note that “0xFF” indicates a hexadecimal FF and means an empty area (empty address).

キャッシュ領域11では、SSD論理アドレスの管理単位とPC論理アドレスの管理単位とが等しく(1/16)ブロックである。このため、キャッシュ領域11の論論変換表では、SSD論理アドレスとPC論理アドレスとが1対1に対応している。   In the cache area 11, the management unit of the SSD logical address and the management unit of the PC logical address are equal (1/16) blocks. For this reason, in the logical / logic conversion table of the cache area 11, the SSD logical address and the PC logical address have a one-to-one correspondence.

図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 RAM 20 shown in FIG.

論論変換表で示す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 memory 10 according to the present embodiment. A data read operation will be described with reference to FIGS. In the read operation, the RAM control circuit 40 searches the logical / logic conversion table in the cache area 11 for the PC logical address to be read (S10). When the PC logical address to be read is in the logical-to-logical conversion table of the cache area 11, the RAM control circuit 40 searches the logical-physical conversion table shown in FIG. 9 for the SSD logical address corresponding to the PC logical address to be read. (S20). The NAND control circuit 30 reads data from the memory 10 based on the SSD physical address searched in the logical-physical conversion table (S30). When the PC logical address to be read is in the logic conversion table of the cache area 11, the search of the logic conversion table of the main memory area 12 is not executed.

読出し対象の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 cache area 11, the RAM control circuit 40 searches the logic conversion table of the main memory area 12 for the PC logical address to be read (S40). The RAM control circuit 40 searches the logical / physical conversion table shown in FIG. 9 for the SSD logical address searched in the logical / logical conversion table (S50). The NAND control circuit 30 reads data from the memory 10 based on the SSD physical address corresponding to the SSD logical address searched in the logical-physical conversion table (S60). Since data with high accessibility is stored in the cache area 11, the RAM control circuit 40 searches the cache area 11 first and then searches the main memory area 12.

具体例として、例えば、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 RAM control circuit 40 first searches the logical-logic conversion table in the cache area 11 for the PC logical address “4”. In the example shown in FIG. 8, the data of the PC logical address “4” is stored in the memory area corresponding to the SSD logical address “8p-2”. Next, the RAM control circuit 40 searches the logical-physical conversion table for the SSD physical address corresponding to the SSD logical address “8p-2”. In the example shown in FIG. 9, the SSD physical address corresponding to the SSD logical address “8p-2” is “1”.

ここで、キャッシュ領域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 cache area 11, 16 addresses are assigned to one block as described above. That is, when one block is divided into 16 sections, the SSD logical address (management unit) of the cache area 11 corresponds to the one section. Therefore, the MPU 50 needs to calculate which number of 16 divisions in the block of the SSD physical address “1” the SSD logical address “8p-2” corresponds to. The storage section in the block is determined from the remainder obtained by dividing the SSD logical address (8p-2) by 16. For example, when the remainder of (8p-2) / 16 is 14, the first division of the SSD physical address “1” is 0, and the 14th division corresponds to the SSD logical address “8p-2”. Therefore, the NAND control circuit 30 reads data from the 14th section of the SSD physical address “1” (the head section of the block is set to 0).

他の具体例として、例えば、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 RAM control circuit 40 first searches the logical-logic conversion table in the cache area 11 for the PC logical address “9”. There is no SSD logical address corresponding to the PC logical address “9” shown in FIG. Therefore, next, the RAM control circuit 40 searches the logic conversion table in the main memory area 12.

ここで、メインメモリ領域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 main memory area 12 corresponds to eight PC logical addresses, and the logical-to-logic conversion table stores only the top PC logical address. Therefore, the MPU 50 specifies the SSD logical address from the result of multiplying the integer part obtained by dividing the SSD logical address by 8 by 8. For example, the MPU 50 calculates the division 9/8 and multiplies the integer part 1 by 8. The MPU 50 obtains “8” as a result. Accordingly, the RAM control circuit 40 retrieves the SSD logical address corresponding to the PC logical address “8” from the logic conversion table. As a result, the SSD logical address “0” corresponding to the PC logical address “8” is obtained. It can be seen that the data indicated by the PC logical address “9” is stored in the memory area corresponding to the SSD logical address “0”.

さらに、RAM制御回路40は、論物変換表からSSD論理アドレス“0”に対応するSSD物理アドレスを検索する。これにより、SSD論理アドレス“0” に対応するSSD物理アドレス“q+1”を得る。PC論理アドレス“9”で示されるデータは、SSD物理アドレス“q+1”に対応するメモリ領域に格納されていることがわかる。   Further, the RAM control circuit 40 retrieves the SSD physical address corresponding to the SSD logical address “0” from the logical-physical conversion table. As a result, the SSD physical address “q + 1” corresponding to the SSD logical address “0” is obtained. It can be seen that the data indicated by the PC logical address “9” is stored in the memory area corresponding to the SSD physical address “q + 1”.

ここで、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 MPU 50 to calculate which of the 16 divisions in the block of the SSD physical address “q + 1” corresponds to the PC logical address “9”. The storage section in the block is determined from the remainder obtained by dividing the PC logical address “9” by 8. In this case, since the remainder is 1, the first section of the SSD physical address “q + 1” corresponds to 0, and the first section corresponds to the PC logical address “9”. Therefore, the NAND control circuit 30 reads data from the first section of the SSD physical address “q + 1” (the head section of the block is set to 0).

以上のように、キャッシュ領域11からデータを読み出す場合には、ブロック内における区分を特定するために、MPU50は、(SSD論理アドレス/16)の余りを算出する。メインメモリ領域12からデータを読み出す場合には、PC論理アドレスを特定するために、MPU50は、((PC論理アドレス/8の整数部分)*8)を算出し、ブロック内における区分を特定するために、MPU50は、(PC論理アドレス/8)の余りを算出する。   As described above, when data is read from the cache area 11, the MPU 50 calculates the remainder of (SSD logical address / 16) in order to specify the division in the block. When reading data from the main memory area 12, in order to specify the PC logical address, the MPU 50 calculates ((integer part of PC logical address / 8) * 8) and specifies the division in the block. The MPU 50 calculates the remainder of (PC logical address / 8).

(書込み動作)
図12は、本実施形態によるメモリ10の書込み動作を示すフロー図である。図6〜図9、図12を参照して、データ書込み動作を説明する。本実施形態では、メインメモリ領域12およびキャッシュ領域11ともに、追記書込み方式を用いてデータが書き込まれる。書込みデータの容量が所定値よりも大きい場合には、データは、メインメモリ領域12に書き込まれる。書込みデータの容量が所定値以下の場合には、データは、メインメモリ領域12に書き込まれる。以下、キャッシュ領域11への書込み動作を説明する。
(Write operation)
FIG. 12 is a flowchart showing a write operation of the memory 10 according to the present embodiment. A data write operation will be described with reference to FIGS. In the present embodiment, data is written into the main memory area 12 and the cache area 11 using the write-once method. When the capacity of the write data is larger than a predetermined value, the data is written into the main memory area 12. When the capacity of the write data is less than or equal to a predetermined value, the data is written into the main memory area 12. Hereinafter, a write operation to the cache area 11 will be described.

書込み動作では、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 RAM control circuit 40 searches for a free area in the logic conversion table of the cache area 11 (S11). When the free area is in the logical-logic conversion table of the cache area 11, the RAM control circuit 40 searches the logical-physical conversion table shown in FIG. 9 for the SSD physical address of the free area (S21). The NAND control circuit 30 writes data to the memory 10 based on the SSD physical address searched in the logical-physical conversion table (S31). When the free area is in the logical-conversion table of the cache area 11, the RAM control circuit 40 does not search for a free area in the logical-conversion table of the main memory area 12. If there is no free area in the logical / conversion table of the cache area 11, the RAM control circuit 40 searches for a free area in the logical / conversion table of the main memory area 12 (S41). The RAM control circuit 40 searches the logical-physical conversion table shown in FIG. 9 for the SSD physical address of the free area in the main memory area 12 (S51). The NAND control circuit 30 writes data to the memory 10 based on the SSD physical address searched in the logical-physical conversion table (S61). After the writing, the RAM control circuit 40 updates the logic conversion table (S71).

具体例として、例えば、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 RAM control circuit 40 first searches the logical area conversion table of the cache area 11 for a free area. In the example shown in FIG. 8, the free area (0xFF) is at the SSD logical address “8 (p−1)”. Next, the RAM control circuit 40 searches the logical / physical conversion table for the SSD physical address corresponding to the SSD logical address “8p−1”. In the example illustrated in FIG. 9, the SSD physical address corresponding to the SSD logical address “8p−1” is “1”.

次に、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 MPU 50 calculates which of the 16 segments in the block of the SSD physical address “1” corresponds to the SSD logical address “8p−1”. The detailed storage location in the block is determined from the remainder obtained by dividing the SSD logical address (8p-2) by 16. For example, when the remainder of (8p-1) / 16 is 15, the first partition of the SSD physical address “1” is 0, and the 15th partition (the last partition of the SSD physical address “1”) is the SSD logical address. Corresponds to “8p-1”. Therefore, the NAND control circuit 30 writes data to the last section of the SSD physical address “1”.

データの書込み後、RAM制御回路40は、PC論理アドレス“9”をキャッシュ領域11の論論変換表において検索する。PC論理アドレス“9”がキャッシュ領域11の論論変換表に無い場合、RAM制御回路40は、図11に示すように、キャッシュ領域11の論論変換表におけるSSD論理アドレス“8p−1”に対応するPC論理アドレスを“0xFF”から“9”に更新する。   After the data is written, the RAM control circuit 40 searches the logical / logic conversion table in the cache area 11 for the PC logical address “9”. When the PC logical address “9” is not in the logical area conversion table of the cache area 11, the RAM control circuit 40 sets the SSD logical address “8p−1” in the logical area conversion table of the cache area 11 as shown in FIG. The corresponding PC logical address is updated from “0xFF” to “9”.

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 cache area 11, the RAM control circuit 40 changes the existing PC logical address “9” to the free address “0xFF” in the logical area conversion table of the cache area 11. The PC logical address corresponding to the SSD logical address “8p−1” is updated to “9”. In the specific example shown in FIG. 11, since the existing PC logical address “9” is not in the logic conversion table of the cache area 11, the RAM control circuit 40 determines the PC logical address corresponding to the SSD logical address “8p−1”. Only the address is updated from “0xFF” to “9”.

例えば、もし、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 cache area 11. is there. Therefore, as shown in FIG. 13, the RAM control circuit 40 assigns the SSD logical address “8p-2” corresponding to the existing PC logical address “4” to the free address “0xFF” in the logical / logic conversion table of the cache area 11. And the PC logical address corresponding to the SSD logical address “8p−1” of the empty address is updated to “4”. In this way, the PC logical address in the logic conversion table is updated.

(書込み動作:キャッシュ領域11がフル(full)場合)
図14は、本実施形態によるメモリ10の書込み動作(キャッシュ領域11がフル場合)を示すフロー図である。
(Write operation: When the cache area 11 is full)
FIG. 14 is a flowchart showing a write operation (when the cache area 11 is full) of the memory 10 according to the present embodiment.

キャッシュ領域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 cache area 11 and the cache area 11 is full, it is necessary to copy the existing data in the cache area 11 to the main memory area 12 and free the address of the cache area 11. FIG. 15 shows the updated logical-logic conversion table in FIG. For example, assume that the SSD logical addresses 8m to 8m + 15 in the cache area 11 shown in FIG. It can be seen that the SSD physical address corresponding to the SSD logical addresses 8m to 8m + 15 is “q” from the logical-physical conversion table shown in FIG. That is, the data in the block indicated by the physical address “q” shown in FIG. 7C is moved.

まず、RAM制御回路40は、SSD論理アドレス8m〜8m+15のうち先頭SSD論理アドレス8mに対応するPC論理アドレスをキャッシュ領域11の論論変換表から検索する(S12)。図15に示すキャッシュ領域11の論論変換表から、SSD論理アドレス8mに対応するPC論理アドレスは、“13”であることが分かる。   First, the RAM control circuit 40 searches the logical logical conversion table in the cache area 11 for the PC logical address corresponding to the head SSD logical address 8m among the SSD logical addresses 8m to 8m + 15 (S12). From the logical-logic conversion table of the cache area 11 shown in FIG. 15, it can be seen that the PC logical address corresponding to the SSD logical address 8m is “13”.

次に、RAM制御回路40は、PC論理アドレス“13”に対応するメインメモリ内のSSD論理アドレスを論論変換表から検索する(S22)。図15に示すメインメモリ領域12の論論変換表から、PC論理アドレス“13”に対応するメインメモリ内のSSD論理アドレスは、“0”に含まれていることが分かる。SSD論理アドレス“0”は、PC論理アドレス8〜15に対応するからである。   Next, the RAM control circuit 40 retrieves the SSD logical address in the main memory corresponding to the PC logical address “13” from the logic conversion table (S22). From the logical / logic conversion table of the main memory area 12 shown in FIG. 15, it is understood that the SSD logical address in the main memory corresponding to the PC logical address “13” is included in “0”. This is because the SSD logical address “0” corresponds to the PC logical addresses 8 to 15.

次に、RAM制御回路40は、論論変換表において検索されたSSD論理アドレス“0”に対応するSSD物理アドレスを論物変換表から検索する(S32)。図9に示す論物変換表から、SSD論理アドレス“0”に対応するSSD物理アドレスは、“q+1”であることが分かる。   Next, the RAM control circuit 40 searches the logical-physical conversion table for an SSD physical address corresponding to the SSD logical address “0” searched in the logical-logic conversion table (S32). From the logical-physical conversion table shown in FIG. 9, it can be seen that the SSD physical address corresponding to the SSD logical address “0” is “q + 1”.

メインメモリ領域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 RAM control circuit 40 searches for a free block from the logical-logic conversion table and the logical-physical conversion table. Assume that the SSD physical address “r” corresponding to the SSD logical address 8 (m−2) is an empty block.

この場合、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 NAND control circuit 30 copies the data in the block indicated by the SSD physical address “q + 1” in the main memory area 12 to the block having the SSD physical address “r”. At this time, as shown in FIG. 16, the partition corresponding to the PC logical address “13” of the SSD physical address “r” is divided into the PC logical address “in the block indicated by the SSD physical address“ q ”of the cache area 11. The data of the section corresponding to 13 ″ is copied (S52). That is, the SSD physical address “q + 1” of the main memory area 12 and the PC logical address “13” of the block indicated by the SSD physical address “q” of the cache area 11 are merged and copied to the empty block (r). This is because the data in the cache area 11 is usually newer than the data in the main memory area 12.

より詳細には、MPU50は、PC論理アドレス“13”を8で除算した余りを計算する。これにより、PC論理アドレス“13”がキャッシュ領域11のブロック内において5番目の区分(このブロックの最初の区分を0とする)に対応することが分かる。   More specifically, the MPU 50 calculates a remainder obtained by dividing the PC logical address “13” by 8. As a result, it can be seen that the PC logical address “13” corresponds to the fifth section in the block of the cache area 11 (the first section of this block is set to 0).

次に、論論変換表を更新する(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 RAM control circuit 40 updates the PC logical address “8” corresponding to the SSD logical address “0” to the free address 0xFF. The RAM control circuit 40 updates the PC logical address “13” corresponding to the SSD logical address 8m to the free address 0xFF. Further, although not shown in FIG. 17, the PC logical address corresponding to the SSD physical address “r” (PC logical address corresponding to the SSD logical address 8 (m−2)) is updated to “8”. As a result, the SSD logical address 8m can be made a free address.

ステップS12〜S62をSSD論理アドレス8m+1〜8m+15について繰り返す。これにより、SSD論理アドレス8m〜8m+15を空きアドレスにすることができる。   Steps S12 to S62 are repeated for SSD logical addresses 8m + 1 to 8m + 15. As a result, the SSD logical addresses 8m to 8m + 15 can be made free addresses.

RAM制御回路40がキャッシュ領域11の論論変換表において空きアドレスを検索する(S72)。空きアドレスであるSSD論理アドレス8m〜8m+15へデータを書き込む(S82)。   The RAM control circuit 40 searches for an empty address in the logical / logic conversion table of the cache area 11 (S72). Data is written to SSD logical addresses 8m to 8m + 15 which are free addresses (S82).

(書込み動作:メインメモリ領域12のデータ量が閾値を超えた場合)
図18は、本実施形態によるメモリ10の書込み動作(メインメモリ領域12のデータ量が閾値を超えた場合)を示すフロー図である。
(Write operation: When the amount of data in the main memory area 12 exceeds the threshold)
FIG. 18 is a flowchart showing the write operation of the memory 10 according to the present embodiment (when the data amount of the main memory area 12 exceeds the threshold value).

メインメモリ領域12が追記書込み方式である場合には、メインメモリ領域12に多くのデータが追記的に蓄積される(S13)。そのデータ量が所定の閾値を超えた場合、キャッシュ領域11のSSD論理アドレスのうち空きアドレスを検索対象から除外することによって、RAM制御回路40が検索する範囲を狭くする(S23)。論論変換表のキャッシュ領域11の検索範囲を狭くすることによって、キャッシュ領域11のSSD論理アドレスが実質的に減少する。これにより、キャッシュ領域11として用いられるブロック数が少なくなり、メインメモリ領域12として用いられるブロック数が相対的に多くなる。   If the main memory area 12 is of the write-once method, a large amount of data is additionally stored in the main memory area 12 (S13). When the amount of data exceeds a predetermined threshold, the search range of the RAM control circuit 40 is narrowed by excluding free addresses from the SSD logical addresses in the cache area 11 from search targets (S23). By narrowing the search range of the cache area 11 of the logic conversion table, the SSD logical address of the cache area 11 is substantially reduced. As a result, the number of blocks used as the cache area 11 is reduced, and the number of blocks used as the main memory area 12 is relatively increased.

キャッシュ領域11がフル状態である場合には、上述のすれS12〜S82ようにキャッシュ領域11の一部のデータをメインメモリ領域12へ移動する。これにより、空きアドレスとなったキャッシュ領域11のSSD論理アドレスを検索対象から除外する(S33)。キャッシュ領域11として用いられるブロックが少なくなり、メインメモリ領域12として用いられるブロックが相対的に多くなる。   When the cache area 11 is full, a part of the data in the cache area 11 is moved to the main memory area 12 as described above in steps S12 to S82. As a result, the SSD logical address of the cache area 11 that has become a free address is excluded from the search target (S33). The number of blocks used as the cache area 11 is reduced, and the number of blocks used as the main memory area 12 is relatively increased.

検索対象から除外する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 main memory area 12 may be provided. Thereby, the cache area 11 can be changed to the main memory area 12 step by step.

図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 cache area 11 and the main memory area 12 of the memory 10 according to the present embodiment. As shown in FIG. 19, when the amount of data stored in the main memory area 12 is small, the cache area 11 is increased. That is, the search range of the SSD logical address in the cache area 11 is increased. As a result, the RAM control circuit 40 searches for many SSD logical addresses in the cache area 11, so that the capacity of the cache area 11 inevitably increases. At this time, a part of the user usable area may be used as the cache area 11.

図20に示すように、メインメモリ領域12内のデータ量が閾値を超えた場合、図18を参照して上述したように、キャッシュ領域11を低減させる。このとき、図20に示すように、複数の閾値を用いてデータ量に応じて段階的にキャッシュ領域11を減少させてもよい。あるいは、図21に示すように、データ量が1つの閾値を超えたときに、キャッシュ領域11であったユーザ使用可能領域を全てメインメモリ領域12へ変更してもよい。   As shown in FIG. 20, when the amount of data in the main memory area 12 exceeds the threshold value, the cache area 11 is reduced as described above with reference to FIG. At this time, as shown in FIG. 20, the cache area 11 may be decreased step by step according to the data amount using a plurality of threshold values. Alternatively, as shown in FIG. 21, when the amount of data exceeds one threshold, all user usable areas that were the cache area 11 may be changed to the main memory area 12.

メインメモリ領域12がフル状態となった場合、図22に示すように、キャッシュ領域11をメインメモリ領域12へ変更してもよい。即ち、キャッシュ領域11のSSD論理アドレスの検索範囲をさらに小さくする。これにより、メインメモリ領域12は、ユーザ使用可能領域を超えてさらに大きな容量のデータを格納することができる。このようにキャッシュ領域11の一部をメインメモリ領域12として使用すれば、消去可能な無効データが多くなる。これにより、消去可能な空きブロックが生じる確率が大きくなる。その結果、後述のように、データの整理動作の頻度を減らすことができるので、メモリ10の寿命をより長くすることができる。   When the main memory area 12 becomes full, the cache area 11 may be changed to the main memory area 12, as shown in FIG. That is, the search range of the SSD logical address in the cache area 11 is further reduced. As a result, the main memory area 12 can store a larger amount of data beyond the user usable area. In this way, if a part of the cache area 11 is used as the main memory area 12, invalid data that can be deleted increases. This increases the probability that an erasable empty block will occur. As a result, as will be described later, since the frequency of data organizing operations can be reduced, the life of the memory 10 can be further extended.

一般に、メインメモリ領域12が管理単位での追記書込み方式を採用している場合、データ量が或る所定量(ユーザ使用可能量など)を超えると、メインメモリ領域12のデータを整理する必要がある。データの整理動作は、有効なデータを他のメモリ領域にコピーし、無効なデータを消去する動作である。データの整理動作は、単なるブロック単位での消去とは異なり、有効なデータを他のメモリ領域にコピーする必要がある。従って、データの整理動作は可及的に減少させることが好ましい。また、頻繁に整理動作を実行すると、メモリ10が短期間に劣化してしまう。   In general, when the main memory area 12 adopts a write-once method in a management unit, it is necessary to organize data in the main memory area 12 when the data amount exceeds a certain predetermined amount (user usable amount, etc.). is there. The data organizing operation is an operation of copying valid data to another memory area and erasing invalid data. The data organization operation is different from simple erasing in units of blocks, and it is necessary to copy valid data to another memory area. Therefore, it is preferable to reduce the data organizing operation as much as possible. Further, if the organizing operation is frequently performed, the memory 10 is deteriorated in a short time.

本実施形態では、メインメモリ領域12のデータが所定量を超えたとき、キャッシュ領域11の一部をメインメモリ領域12に割り当てる。これにより、メインメモリ領域12の追記領域が増大するので、整理動作の開始を遅らせ、整理動作の周期が長くなる。整理動作の周期を長期化することによって、データ消去および書込みの頻度が低下するので、メモリ10の劣化を抑制することができる。さらに、整理動作の周期が長くなると、それだけ無効になるデータが多くなる。無効データが多いことは、整理動作において、コピーの必要な有効データが少ないことを意味する。データのコピーが少ないと、整理動作においてデータの消去量を低減することができる。また、無効データが多いことは、ブロック単位でデータを消去する確率が高くなる。消去ブロックが多いと、それだけ、整理動作の周期をさらに長くすることができる。特に、メインメモリ領域12の管理単位が小さい場合、整理動作で整理されるデータ量が増える。よって、メインメモリ領域12の管理単位が小さい場合に、上記の効果は大きい。   In the present embodiment, when the data in the main memory area 12 exceeds a predetermined amount, a part of the cache area 11 is allocated to the main memory area 12. As a result, the additional recording area of the main memory area 12 increases, so that the start of the organizing operation is delayed, and the period of the organizing operation becomes longer. Since the frequency of data erasure and writing decreases by extending the period of the organizing operation, deterioration of the memory 10 can be suppressed. Furthermore, the longer the organizing operation cycle, the more data becomes invalid. A large amount of invalid data means that there is little valid data that needs to be copied in the organizing operation. If there are few data copies, the amount of data erasure can be reduced in the organizing operation. In addition, a large amount of invalid data increases the probability of erasing data in units of blocks. The more erase blocks, the longer the organizing operation cycle. In particular, when the management unit of the main memory area 12 is small, the amount of data organized by the organizing operation increases. Therefore, when the management unit of the main memory area 12 is small, the above effect is large.

メインメモリ領域12のデータ量が閾値以下になった場合に、キャッシュ領域11の論論変換表の検索領域を増大させてもよい。これにより、キャッシュ領域11として用いられるブロック数が多くなり、メインメモリ領域12として用いられるブロック数が少なくなる。   When the amount of data in the main memory area 12 is equal to or less than the threshold value, the search area of the logic conversion table in the cache area 11 may be increased. As a result, the number of blocks used as the cache area 11 increases, and the number of blocks used as the main memory area 12 decreases.

このように、本実施形態では、NAND制御回路30は、上述のように、キャッシュ領域11のデータ量および/またはメインメモリ領域12のデータ量に応じてメインメモリ領域12のブロック数とキャッシュ領域11のブロック数とを動的に変更させる。これにより、整理動作の周期を長期化し、メモリ10の劣化を抑制することができる。その結果、メモリ10の寿命を従来よりも長くすることができる。   As described above, in this embodiment, the NAND control circuit 30 determines the number of blocks in the main memory area 12 and the cache area 11 according to the data amount of the cache area 11 and / or the data amount of the main memory area 12 as described above. The number of blocks is dynamically changed. As a result, the period of the organizing operation can be extended and deterioration of the memory 10 can be suppressed. As a result, the lifetime of the memory 10 can be made longer than before.

本発明に係る実施形態に従ったメモリシステムの構成を示すブロック図。The block diagram which shows the structure of the memory system according to embodiment which concerns on this invention. メモリ10のメインメモリ領域12とキャッシュ領域11とを示す概念図。FIG. 2 is a conceptual diagram showing a main memory area 12 and a cache area 11 of the memory 10. NAND型EEPROMのセルストリングの平面図。The top view of the cell string of NAND type EEPROM. NAND型EEPROMの2つのメモリセルの断面図。Sectional drawing of two memory cells of NAND type EEPROM. 図3に示すセルストリングの等価回路図。FIG. 4 is an equivalent circuit diagram of the cell string shown in FIG. 3. メモリブロックを示す回路図。The circuit diagram which shows a memory block. PC論理アドレス、メモリ10の論理アドレスおよびメモリ10の物理アドレスを示した概念図。The conceptual diagram which showed the PC logical address, the logical address of the memory 10, and the physical address of the memory 10. FIG. PC論理アドレスとSSD論理アドレスとの間の論論変換表。Table of logical conversion between PC logical address and SSD logical address. SSD論理アドレスとSSD物理アドレスとの間の論物変換表。A logical-physical conversion table between the SSD logical address and the SSD physical address. 本実施形態によるメモリ10の読出し動作を示すフロー図。FIG. 5 is a flowchart showing a read operation of the memory 10 according to the present embodiment. 書込み動作における更新中の論論変換表。The logic conversion table being updated in a write operation. 本実施形態によるメモリ10の書込み動作を示すフロー図。FIG. 5 is a flowchart showing a write operation of the memory 10 according to the present embodiment. 書込み動作における更新中の論論変換表。The logic conversion table being updated in a write operation. 本実施形態によるメモリ10の書込み動作(キャッシュ領域11がフル場合)を示すフロー図。FIG. 5 is a flowchart showing a write operation (when a cache area 11 is full) of the memory 10 according to the present embodiment. 図13における更新後の論論変換表。FIG. 14 is an updated logical-conversion table in FIG. キャッシュ領域11のデータをメインメモリ領域12へコピーする様子を示す概念図。The conceptual diagram which shows a mode that the data of the cache area | region 11 are copied to the main memory area | region 12. FIG. 書込み動作における更新中の論論変換表。The logic conversion table being updated in a write operation. 本実施形態によるメモリ10の書込み動作(メインメモリ領域12のデータ量が閾値を超えた場合)を示すフロー図。FIG. 6 is a flowchart showing a write operation of the memory 10 according to the present embodiment (when the data amount of the main memory area 12 exceeds a threshold value). 本実施形態によるメモリ10のキャッシュ領域11およびメインメモリ領域12の変化を示す概念図。The conceptual diagram which shows the change of the cache area | region 11 and the main memory area | region 12 of the memory 10 by this embodiment. 本実施形態によるメモリ10のキャッシュ領域11およびメインメモリ領域12の変化を示す概念図。The conceptual diagram which shows the change of the cache area | region 11 and the main memory area | region 12 of the memory 10 by this embodiment. 本実施形態によるメモリ10のキャッシュ領域11およびメインメモリ領域12の変化を示す概念図。The conceptual diagram which shows the change of the cache area | region 11 and the main memory area | region 12 of the memory 10 by this embodiment. 本実施形態によるメモリ10のキャッシュ領域11およびメインメモリ領域12の変化を示す概念図。The conceptual diagram which shows the change of the cache area | region 11 and the main memory area | region 12 of the memory 10 by this embodiment.

符号の説明Explanation of symbols

10…不揮発性メモリ
12…メインメモリ領域12
11…キャッシュ領域11
20…ランダムアクセスメモリ
30…NAND制御回路
40…RAM制御回路
50…MPU
10: Non-volatile memory 12: Main memory area 12
11: Cache area 11
20 ... Random access memory 30 ... NAND control circuit 40 ... RAM control circuit 50 ... MPU

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に記載のメモリシステム。   The control unit decreases the number of blocks in the cache area and increases the number of erase blocks in the main memory area when the amount of data stored in the main memory area is larger than a predetermined value. The memory system according to claim 1. 前記制御部は、前記不揮発性メモリの外部から受けた書込みデータの容量に基づいて、該書込みデータを前記メインメモリ領域または前記キャッシュ領域のいずれに格納するかを決定することを特徴とする請求項1または請求項2に記載のメモリシステム。   The control unit determines whether to store the write data in the main memory area or the cache area based on a capacity of the write data received from the outside of the nonvolatile memory. The memory system according to claim 1 or 2. 前記制御部は、前記不揮発性メモリの外部から受けた書込みデータを前記キャッシュ領域に格納するために、前記第2の管理単位に割当てられた第1の論理アドレスを検索し、
前記メインメモリ領域に格納されたデータ量が所定値より多い場合に、前記制御部は、検索する前記第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.
JP2008061655A 2008-03-11 2008-03-11 Memory system Expired - Fee Related JP4558054B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (3)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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