JP2013178787A - Flash memory device and method - Google Patents

Flash memory device and method Download PDF

Info

Publication number
JP2013178787A
JP2013178787A JP2013069832A JP2013069832A JP2013178787A JP 2013178787 A JP2013178787 A JP 2013178787A JP 2013069832 A JP2013069832 A JP 2013069832A JP 2013069832 A JP2013069832 A JP 2013069832A JP 2013178787 A JP2013178787 A JP 2013178787A
Authority
JP
Japan
Prior art keywords
page
data
flash memory
command
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.)
Pending
Application number
JP2013069832A
Other languages
Japanese (ja)
Inventor
Mlyn Marc
ムリン、マーク
Eyal Arik
エヤル、アリク
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.)
Western Digital Israel Ltd
Original Assignee
SanDisk IL Ltd
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 SanDisk IL Ltd filed Critical SanDisk IL Ltd
Priority to JP2013069832A priority Critical patent/JP2013178787A/en
Publication of JP2013178787A publication Critical patent/JP2013178787A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Read Only Memory (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a flash memory device configured to allow a cache read operation of preceding page data.SOLUTION: The flash memory device includes an array of memory cells for storing data pages, one or more buffers for retrieving the data pages, and a logic mechanism that, responsive to a plurality of commands, transfers the data pages between the buffers and a host. Each command subsequent to a first command instructs retrieval of a data page whose address either precedes or exceeds by more than 1, the address of the data page retrieved by the immediately preceding command, and at least one command does not explicitly specify the address of its retrieved data page. Another similar flash memory device uses two buffers to implement cache reads of data pages whose addresses are specified arbitrarily in the commands subsequent to the first command.

Description

本発明は、フラッシュメモリ・デバイスの分野に関し、より詳しくは、フラッシュメモリ・デバイスにおいてキャッシュ読み込みオペレーションを用いることに関する。   The present invention relates to the field of flash memory devices, and more particularly to the use of cache read operations in flash memory devices.

フラッシュメモリ・デバイスは、長年知られている。本技術において既知である標準フラッシュメモリ・デバイスは、ページやブロックと呼ばれるグループにアレンジしたメモリ・アレイ内に、データを記憶する。   Flash memory devices have been known for many years. Standard flash memory devices known in the art store data in a memory array arranged in groups called pages or blocks.

本技術で知られるNANDフラッシュメモリ・デバイスの一例は、ミクロン・テクノロジーズ社のデバイス番号MT29F2G08AABWPである。このデバイスのデータ・シート(本文において以下DS)は、すべての目的のために、参照により本文に完全に記述したものとする。   An example of a NAND flash memory device known in the art is the device number MT29F2G08AABWP from Micron Technologies. The device data sheet (DS in the text below) is hereby fully incorporated by reference for all purposes.

フラッシュメモリ・デバイスを接続したホスト(例えば、フラッシュメモリを接続したコンピュータ、コントローラまたは他の類似デバイス)が、フラッシュメモリ・デバイスとデータを交換し合う場合、通常、ページ・バッファと呼ばれるインターナルバッファ(またはレジスタ)との間で、1回のオペレーション内に同時にデータ・ページ全体を、メモリ・アレイへ書き込む、またはメモリ・アレイから読み出す。   When a host connected to a flash memory device (eg, a computer, controller or other similar device connected to flash memory) exchanges data with the flash memory device, an internal buffer (usually called a page buffer) Or a register), the entire data page is written to or read from the memory array simultaneously in a single operation.

ホストが、フラッシュメモリ・デバイスに1ページのデータを読み取るように指図する要求をアサートすると、そのページのデータがメモリ・アレイからページ・バッファへ転送される。そのページのデータがページ・バッファへ完全に読み取られた後にのみ、ホストは、フラッシュメモリ・デバイスに新しいオペレーションを開始するように指図する要求をアサートすることができる。   When the host asserts a request to direct the flash memory device to read a page of data, that page of data is transferred from the memory array to the page buffer. Only after the page's data has been completely read into the page buffer, the host can assert a request to direct the flash memory device to begin a new operation.

ホストとフラッシュメモリ・デバイスとの間のデータ交換の所要時間は、ホスト⇔バッファおよびバッファ⇔メモリアレイ転送ピリオドの両方を含む。既存のフラッシュメモリ・デバイスのデータ・ページ・サイズが増加するにつれ、ホスト⇔バッファ転送時間も同様に増加し、バッファ⇔メモリ・アレイ転送時間に相当するようになる。   The time required for data exchange between the host and the flash memory device includes both the host to buffer and buffer to memory array transfer periods. As the data page size of existing flash memory devices increases, the host⇔buffer transfer time increases as well, corresponding to the buffer⇔memory array transfer time.

例えば、2キロバイトのデータ・ページを持つ、本技術で既知であるNANDフラッシュメモリ・デバイスにおいては、ホスト⇔バッファ転送時間は、典型的に1ページにつき50−100マイクロ秒であり、バッファ⇔メモリアレイ・ページ読み取り時間は、1ページにつき20−50マイクロ秒であり、そして、バッファ⇔メモリアレイ・ページ・プログラム(書き込み)時間は、1ページにつき200−800マイクロ秒である。   For example, in a NAND flash memory device known in the art with 2 kilobytes of data pages, the host⇔buffer transfer time is typically 50-100 microseconds per page and the buffer⇔memory array Page read time is 20-50 microseconds per page and buffer memory array page program (write) time is 200-800 microseconds per page.

したがって、システムのスループットを増加させるために、いくつかのフラッシュメモリ・デバイスは、追加のデータ・バッファ、すなわちキャッシュ・バッファを含む。これによって、ホストとこのキャッシュ・バッファとの間での、そしてページ・バッファとメモリ・アレイとの間での同時データ転送が可能である。   Thus, to increase system throughput, some flash memory devices include an additional data buffer, or cache buffer. This allows simultaneous data transfer between the host and this cache buffer and between the page buffer and the memory array.

フラッシュメモリ・デバイス内にキャッシュ・バッファを備えると、ページ・データは、メモリ・アレイからページ・バッファへ読み出されてから、すぐにキャッシュ・バッファへ転送される。これによって、メモリ・アレイから次のページ・データを受信するためにページ・バッファは「自由にされる」。換言すれば、前のページ・データがキャッシュ・バッファから完全に転送されてしまう前であっても、ホストは、フラッシュメモリ・デ
バイスに次のページ・データをメモリ・アレイから読み取るよう要求をアサートできる。
With a cache buffer in the flash memory device, page data is read from the memory array to the page buffer and then immediately transferred to the cache buffer. This “frees” the page buffer to receive the next page data from the memory array. In other words, the host can assert a request to the flash memory device to read the next page data from the memory array even before the previous page data has been completely transferred from the cache buffer. .

したがって、ページ読み取りオペレーションのためにキャッシュ・バッファを実装することは、転送遅延時間を実質的に減少させて、システムのスループットを増加させる。   Thus, implementing a cache buffer for page read operations substantially reduces transfer delay time and increases system throughput.

キャッシュ・バッファを用いる読み取りオペレーションは、(すべてが特定なフラッシュデバイス販売業者に依存する)「キャッシュ読み出し」あるいは「キャッシュで読み取る」または「キャッシュ・モード・ページ読み取り」と呼ばれている。読み取りオペレーションは、ホストが発する特定なコマンドに反応する。   Read operations using the cache buffer are referred to as “cache read” or “read in cache” or “cache mode page read” (all depending on the particular flash device vendor). Read operations respond to specific commands issued by the host.

実際には、フラッシュメモリ・デバイスは、フラッシュメモリへ順次書き込まれる大量のデータを読み取るために提供される。一例は、オペレーティングシステムによって常時一つの「塊」としてフラッシュメモリ・デバイスへ書き込まれ、そしてそこから読み出される、数キロバイトのデータを含む一群のファイル・システムである。他の例は、マルチメディア・ソース(例えば、ビデオ・オーディオ・リコーディングシステム)が「ストリームする」情報、またはデジタル・カメラで取った画像を含む。   In practice, flash memory devices are provided for reading large amounts of data that are written sequentially to flash memory. An example is a group of file systems containing several kilobytes of data that are always written to and read from a flash memory device by the operating system as a single “bulk”. Other examples include information “streamed” by multimedia sources (eg, video and audio recoding systems), or images taken with a digital camera.

これらのケースでは、フラッシュメモリ・デバイスから読み取るよう要求される次のページ・データが、メモリ・アレイ内に記憶された物理的に連続なページ・データである可能性が高い。本技術において既知であるフラッシュメモリ・デバイスは、ページ読み取りオペレーションのためにキャッシュ・バッファを実装する場合、この憶測を利用する。例えば、現行の読み取りオペレーションが、メモリ・アレイのアドレスNからページ・データを読み取っているなら、次のキャッシュ読み取りオペレーションは、常に、メモリ・アレイのアドレスN+1からページ・データを読み込む。   In these cases, the next page data requested to be read from the flash memory device is likely to be physically contiguous page data stored in the memory array. Flash memory devices known in the art make use of this assumption when implementing a cache buffer for page read operations. For example, if the current read operation is reading page data from memory array address N, the next cache read operation will always read page data from memory array address N + 1.

しかしながら、「次の連続なページ」の憶測が、もはや有効でないという可能性がある。そのようなケースの一つに、データ・ページを「逆」順で読む必要があるアプリケーションがある。例えば、LIFO(後入れ先出し)プロシージャを実行するものである。時間の経過に従って異なるタイプのイベントを記録し、時々最近の記録から特定なタイプのイベントを回顧するというオプションを必要とするシステムには、そのようなアプリケーションの実装が要求されることがある。そのようなシステムでは、「前の」ページ・データを素早く読み取るために、最後のレコード(すなわちページ・データ)のアドレスを用いることは、非常に有益であろう。   However, it is possible that the speculation of “next consecutive page” is no longer valid. One such case is an application that needs to read data pages in "reverse" order. For example, a LIFO (Last In First Out) procedure is executed. Systems that require the option of recording different types of events over time and sometimes retrospecting specific types of events from recent records may require implementation of such applications. In such a system, it would be very beneficial to use the address of the last record (ie, page data) to quickly read “previous” page data.

キャッシュ読み出しオペレーションに使用される既存のフラッシュメモリ・デバイスは、そのような必要性に応答するようには構成されていない。換言すれば、キャッシュ・バッファを含む本技術において既知であるフラッシュメモリ・デバイスは、「逆の」(すなわち、ページからページへのアドレスが減少する)順序での、ページ・データの読み取りを提供することができない。「前の」ページ・データの読み取りを成し遂げるのに、既存の方法は、単に「正規の」(キャッシュされない)ページ読み取りオペレーションを適用し、キャッシュ・バッファを利用しない。   Existing flash memory devices used for cache read operations are not configured to respond to such a need. In other words, flash memory devices known in the art that include a cache buffer provide for reading page data in an "reverse" (ie, decreasing page-to-page address) order. I can't. To accomplish reading the “previous” page data, existing methods simply apply “regular” (non-cached) page read operations and do not utilize a cache buffer.

しかしながら、「正規の」ページ読み取りオペレーションを適用することは、正規のキャッシュ読み取りオペレーションと比較すると、システムのスループットを低下させる。   However, applying “regular” page read operations reduces system throughput when compared to regular cache read operations.

したがって、本発明の主要な目的は、前のページ・データのキャッシュ読み出しオペレーションを可能にするように構成されたフラッシュメモリ・デバイスを導入することによって、従来の技術の欠点を克服することである。本発明によるフラッシュメモリ・デバイ
スは、さらに、任意のアドレスのキャッシュ読み出しオペレーションを可能にするよう構成される。
Accordingly, a primary object of the present invention is to overcome the disadvantages of the prior art by introducing a flash memory device configured to allow cache read operations of previous page data. The flash memory device according to the present invention is further configured to allow cache read operations at any address.

ロジック・メカニズムは、フラッシュメモリ・デバイスとホストとの間でデータ・ページを転送するために、ホストから受信したコマンドに反応する。ロジック・メカニズムは、「通常の」キャッシュ読み出しコマンド(すなわち、1だけ増加させたアドレス)および「逆の」キャッシュ読み出しコマンド(すなわち、1だけ減少させたアドレス)の二つの異なるコマンドに反応する。   The logic mechanism reacts to commands received from the host to transfer data pages between the flash memory device and the host. The logic mechanism responds to two different commands: a “normal” cache read command (ie, an address incremented by 1) and a “reverse” cache read command (ie, an address decremented by 1).

本発明によれば、次のものを含むフラッシュメモリ・デバイスが提供される。(a)複数のデータ・ページを記憶するためのメモリ・セルのアレイ。(b)複数のデータ・ページを取り出すための少なくとも一つのバッファ。そして(c)ホストへ取り出す複数のデータ・ページを転送するために、複数のコマンドに反応するロジック・メカニズム。この場合、第二の、そして以降のコマンドの各々は、アレイ内における、直前のコマンドによって取り出されたデータ・ページのアドレスに先行するアドレスのデータ・ページを取り出すようフラッシュメモリ・デバイスに指図する。そして、コマンドの少なくとも一つは、取り出されるデータ・ページの明示的に指定されたアドレスを欠いている。   In accordance with the present invention, a flash memory device is provided that includes: (A) An array of memory cells for storing a plurality of data pages. (B) At least one buffer for retrieving a plurality of data pages. And (c) a logic mechanism that reacts to multiple commands to transfer multiple data pages for retrieval to the host. In this case, each of the second and subsequent commands directs the flash memory device to retrieve the data page at the address that precedes the address of the data page retrieved by the previous command in the array. And at least one of the commands lacks an explicitly specified address of the data page to be retrieved.

本発明による第一のフラッシュメモリ・デバイスによれば、連続的に読み取られるデータ・ページのアドレスの減分は、データ・ページのアドレスが明示的に指定されることを必要とせずに適用される。第一のフラッシュメモリ・デバイスは、データ・ページを記憶するためのメモリ・セルのアレイ、データ・ページを取り出すための一つ以上のバッファ、そして、前のコマンドによって取り出されたデータ・ページをバッファとホストとの間で転送するためのロジック・メカニズムを含む。   According to the first flash memory device according to the invention, the decrementing of the address of the data page that is read continuously is applied without requiring that the address of the data page be explicitly specified. . The first flash memory device includes an array of memory cells for storing data pages, one or more buffers for retrieving data pages, and buffering data pages retrieved by previous commands. Contains a logic mechanism for transfer between the host and the host.

本発明に従って本文で説明する、少なくとも一つのコマンドが明示的に指定されたアドレスを欠くという、この最後の制限、そして他の方法およびフラッシュメモリ・デバイスの類似の制限は、本発明を、すべてのアドレスを明示的に指定する、したがって暗にすべての増分を特定する従来の技術から区別するものである。   This last limitation, as described herein in accordance with the present invention, that at least one command lacks an explicitly specified address, and similar limitations of other methods and flash memory devices, make this invention all This distinguishes it from the conventional technique of explicitly specifying an address and thus implicitly specifying all increments.

第二の、そして以降のコマンドによって取り出されるデータ・ページのアドレスが、直前のコマンドによって取り出されたデータ・ページのアドレスに固定減分だけ先行することが好ましい。固定減分が−1に物理的に組まれていることが最も好ましい。   Preferably, the address of the data page fetched by the second and subsequent commands precedes the address of the data page fetched by the previous command by a fixed decrement. Most preferably, the fixed decrement is physically assembled at -1.

第二の、そして以降のコマンドの各々は、そのコマンドによって取り出されるデータ・ページのアドレスが、直前のコマンドによって取り出されたデータ・ページのアドレスに、どれだけ先行するのかを特定するパラメータ値を含むことが好ましい。   Each of the second and subsequent commands includes a parameter value that specifies how far the address of the data page retrieved by that command precedes the address of the data page retrieved by the previous command. It is preferable.

フラッシュメモリ・デバイスは、ページ・バッファおよびキャッシュ・バッファの、二つのバッファを含むことが好ましい。これによって、二つのデータ・ページの同時データ転送が可能になり、二つのデータ・ページの一つが、メモリ・セルのアレイとページ・バッファとの間で転送され、二つのデータ・ページのもう一つが、キャッシュ・バッファとホストとの間で転送される。   The flash memory device preferably includes two buffers, a page buffer and a cache buffer. This allows simultaneous data transfer of two data pages, one of the two data pages being transferred between the array of memory cells and the page buffer, and the other of the two data pages. Are transferred between the cache buffer and the host.

本発明によれば、また、フラッシュメモリからデータ・ページを読み取るための、次のステップを含む方法が提供される。(a)ホストによって、フラッシュメモリに第一のデータ・ページを取り出すよう指図する第一のコマンドを発するステップ。(b)第一のコマンドに応答して、フラッシュメモリのロジック・メカニズムによって第一のデータ・ページを取り出すステップ。(c)ホストによって、直前のコマンドに応答して取り出されたデータ・ページのアドレスに先行するアドレスの対応するデータ・ページを取り出すよ
うフラッシュメモリに指図する、少なくとも一つの第二のコマンドを発するステップ。なお、少なくとも一つの第二のコマンドは、対応するデータ・ページのアドレスの明示的な指定を欠いている。そして(d)第二のコマンドの各々に応答して、ロジック・メカニズムによって対応するデータ・ページを取り出すステップ。
In accordance with the present invention, there is also provided a method for reading a data page from flash memory comprising the following steps. (A) issuing a first command by the host to instruct the flash memory to retrieve the first data page; (B) In response to the first command, fetching the first data page by the logic mechanism of the flash memory. (C) issuing at least one second command by the host that instructs the flash memory to retrieve the data page corresponding to the address preceding the address of the data page retrieved in response to the previous command; . Note that at least one second command lacks explicit designation of the address of the corresponding data page. And (d) retrieving a corresponding data page by a logic mechanism in response to each of the second commands.

第一のコマンドによって取り出されたデータ・ページに続くコマンドによって取り出される各々のデータ・ページのアドレスは、フラッシュメモリ・アレイにおいて、直前のコマンドによって取り出されたデータ・ページのアドレスの直前に位置することが好ましい。   The address of each data page fetched by the command following the data page fetched by the first command is located in the flash memory array immediately before the address of the data page fetched by the previous command. Is preferred.

第二のコマンドの各々は、そのコマンドによって取り出されるデータ・ページのアドレスが、直前のコマンドによって取り出されたデータ・ページのアドレスに、どれだけ先行するのかを特定するパラメータ値を含むことが好ましい。   Each of the second commands preferably includes a parameter value that specifies how far the address of the data page retrieved by that command precedes the address of the data page retrieved by the immediately preceding command.

第二のコマンドの各々は、キャッシュ読み出しコマンドとして実行されることが好ましい。   Each of the second commands is preferably executed as a cache read command.

本発明によれば、また、次のものを含むフラッシュメモリ・デバイスが提供される。(a)複数のデータ・ページを記憶するためのメモリ・セルのアレイ。(b)複数のデータ・ページを取り出すための少なくとも一つのバッファ。そして(c)ホストへ取り出す複数のデータ・ページを転送するために、複数のコマンドに反応するロジック・メカニズム。この場合、第二の、そして以降のコマンドの各々は、アレイ内において、直前のコマンドによって取り出されたデータ・ページのアドレスに、1より大きく超過するアドレスのデータ・ページを取り出すようフラッシュメモリ・デバイスに指図する。そして、少なくとも一つの以降のコマンドの少なくとも一つは、取り出されるデータ・ページの明示的に指定されたアドレスを欠いている。   In accordance with the present invention, there is also provided a flash memory device comprising: (A) An array of memory cells for storing a plurality of data pages. (B) At least one buffer for retrieving a plurality of data pages. And (c) a logic mechanism that reacts to multiple commands to transfer multiple data pages for retrieval to the host. In this case, each of the second and subsequent commands causes the flash memory device to fetch a data page at an address greater than 1 to the address of the data page fetched by the previous command in the array. Direct to. And at least one of the subsequent commands lacks an explicitly specified address of the data page to be retrieved.

第二の、そして以降のコマンドの各々は、そのコマンドによって取り出されるデータ・ページのアドレスが、直前のコマンドによって取り出されたデータ・ページのアドレスに、どれだけ超過するのかを特定するパラメータ値を含むことが好ましい。   Each of the second and subsequent commands includes a parameter value that specifies how much the address of the data page retrieved by that command exceeds the address of the data page retrieved by the previous command. It is preferable.

フラッシュメモリ・デバイスは、ページ・バッファおよびキャッシュ・バッファの、二つのバッファを含むことが好ましい。これによって、二つのデータ・ページの同時データ転送が可能になり、二つのデータ・ページの一つが、メモリ・セルのアレイとページ・バッファとの間で転送され、二つのデータ・ページのもう一つが、キャッシュ・バッファとホストとの間で転送される。   The flash memory device preferably includes two buffers, a page buffer and a cache buffer. This allows simultaneous data transfer of two data pages, one of the two data pages being transferred between the array of memory cells and the page buffer, and the other of the two data pages. Are transferred between the cache buffer and the host.

本発明によれば、また、フラッシュメモリからデータ・ページを読み取るための、次のステップを含む方法が提供される。(a)ホストによって、フラッシュメモリに第一のデータ・ページを取り出すよう指図する第一のコマンドを発するステップ。(b)第一のコマンドに応答して、フラッシュメモリのロジック・メカニズムによって第一のデータ・ページを取り出すステップ。(c)ホストによって、直前のコマンドに応答して取り出されたデータ・ページのアドレスに、1より大きく超過するアドレスの対応するデータ・ページを取り出すようフラッシュメモリに指図する、少なくとも一つの第二のコマンドを発するステップ。なお、少なくとも一つの第二のコマンドの少なくとも一つは、対応するデータ・ページのアドレスの明示的な指定を欠いている。そして(d)第二のコマンドの各々に応答して、ロジック・メカニズムによって対応するデータ・ページを取り出すステップ。   In accordance with the present invention, there is also provided a method for reading a data page from flash memory comprising the following steps. (A) issuing a first command by the host to instruct the flash memory to retrieve the first data page; (B) In response to the first command, fetching the first data page by the logic mechanism of the flash memory. (C) directs the flash memory to retrieve the corresponding data page at an address greater than 1 to the address of the data page retrieved by the host in response to the previous command; The step of issuing a command. Note that at least one of the at least one second command lacks an explicit designation of the address of the corresponding data page. And (d) retrieving a corresponding data page by a logic mechanism in response to each of the second commands.

第二のコマンドの各々は、そのコマンドによって取り出される対応データ・ページのア
ドレスが、直前のコマンドによって取り出されたデータ・ページのアドレスに、どれだけ超過するのかを特定するパラメータ値を含むことが好ましい。
Each of the second commands preferably includes a parameter value that specifies how much the address of the corresponding data page retrieved by that command exceeds the address of the data page retrieved by the previous command. .

第二のコマンドの各々は、キャッシュ読み出しコマンドとして実行されることが好ましい。   Each of the second commands is preferably executed as a cache read command.

本発明によれば、また、次のものを含むフラッシュメモリ・デバイスが提供される。(a)複数のデータ・ページを記憶するためのメモリ・セルのアレイ。(b)二つのバッファ。なお、複数のデータ・ページを取り出すために、バッファの一つがページ・バッファであり、もう一つのバッファがキャッシュ・バッファである。これによって、二つのデータ・ページの同時データ転送が少なくとも部分的に可能となり、二つのデータ・ページの一つが、メモリ・セルのアレイとページ・バッファとの間で転送され、二つのデータ・ページのもう一つが、キャッシュ・バッファとホストとの間で転送される。そして(c)ホストへ取り出される複数のデータ・ページの少なくとも二つを転送するための、複数のコマンドに反応するロジック・メカニズム。なお、前記ページ・バッファを介して、そして前記キャッシュ・バッファを介して転送が実行される。そして、複数のコマンドの第二の、そして以降のコマンドの各々が、任意に指定したアドレスからデータ・ページを取り出すようフラッシュメモリ・デバイスに指図する。   In accordance with the present invention, there is also provided a flash memory device comprising: (A) An array of memory cells for storing a plurality of data pages. (B) Two buffers. In order to retrieve a plurality of data pages, one of the buffers is a page buffer and the other buffer is a cache buffer. This at least partially enables simultaneous data transfer of two data pages, one of the two data pages being transferred between the array of memory cells and the page buffer, and two data pages The other is transferred between the cache buffer and the host. And (c) a logic mechanism responsive to multiple commands for transferring at least two of the multiple data pages retrieved to the host. The transfer is executed through the page buffer and through the cache buffer. Then, each of the second and subsequent commands of the plurality of commands directs the flash memory device to retrieve a data page from an arbitrarily designated address.

第二の、そして以降のコマンドの各々は、そのコマンドによって取り出される対応データ・ページのアドレスが、直前のコマンドによって取り出されたデータ・ページのアドレスから、どれだけ異なるのかを特定するパラメータ値を含むことが好ましい。   Each of the second and subsequent commands includes a parameter value that specifies how different the address of the corresponding data page retrieved by that command is from the address of the data page retrieved by the previous command. It is preferable.

任意のアドレスは、明示的に指定されることが好ましい。   Any address is preferably specified explicitly.

本発明によれば、また、フラッシュメモリからデータ・ページを読み取るための、次のステップを含む方法が提供される。(a)ホストによって、フラッシュメモリに第一のデータ・ページを取り出すよう指図する第一のコマンドを発するステップ。(b)第一のコマンドに応答して、フラッシュメモリのロジック・メカニズムによって第一のデータ・ページを取り出すステップ。(c)ホストによって、任意に指定したアドレスから対応するデータ・ページを取り出すようフラッシュメモリに指図する少なくとも一つのキャッシュ読み出しコマンドを発するステップ。そして(d)第二のコマンドの各々に応答して、ロジック・メカニズムによって対応するデータ・ページを取り出すステップ。   In accordance with the present invention, there is also provided a method for reading a data page from flash memory comprising the following steps. (A) issuing a first command by the host to instruct the flash memory to retrieve the first data page; (B) In response to the first command, fetching the first data page by the logic mechanism of the flash memory. (C) The host issues at least one cache read command that instructs the flash memory to retrieve the corresponding data page from an arbitrarily designated address. And (d) retrieving a corresponding data page by a logic mechanism in response to each of the second commands.

キャッシュ読み出しコマンドの各々は、そのコマンドによって取り出される対応データ・ページのアドレスが、直前のコマンドによって取り出されたデータ・ページのアドレスから、どれだけ異なるのかを特定するパラメータ値を含むことが好ましい。   Each of the cache read commands preferably includes a parameter value that specifies how different the address of the corresponding data page retrieved by that command is from the address of the data page retrieved by the immediately preceding command.

キャッシュ読み出しコマンドの各々は、そのコマンドによって取り出される対応データ・ページのアドレスを明示的に指定することが好ましい。   Each cache read command preferably explicitly specifies the address of the corresponding data page retrieved by the command.

本発明によれば、また、次のものを含むフラッシュメモリ・デバイスが提供される。(a)複数のデータ・ページを記憶するためのメモリ・セルのアレイ。(b)ページ・バッファ。(c)キャッシュ・バッファ。そして(d)メモリ・セルのアレイとページ・バッファとの間で複数のデータ・ページの一つを、複数のデータ・ページのもう一つがキャッシュ・バッファとホストとの間で転送される間に、少なくとも部分的に同時に転送するための、複数のコマンドに反応するロジック・メカニズム。なお、メモリ・セルのアレイとページ・バッファとの間で転送されるデータ・ページのアドレスは、アレイにおいて、キャッシュ・バッファとページ・ホストとの間で転送されるデータ・ページのアドレスに先行する。   In accordance with the present invention, there is also provided a flash memory device comprising: (A) An array of memory cells for storing a plurality of data pages. (B) Page buffer. (C) Cache buffer. And (d) one of the plurality of data pages between the array of memory cells and the page buffer, while the other of the plurality of data pages is transferred between the cache buffer and the host. , A logic mechanism that reacts to multiple commands to at least partially transfer at the same time. Note that the address of the data page transferred between the array of memory cells and the page buffer precedes the address of the data page transferred between the cache buffer and the page host in the array. .

メモリ・セルのアレイとページ・バッファとの間で転送されるデータ・ページのアドレスは、アレイにおいて、キャッシュ・バッファとホストとの間で転送されるデータ・ページのアドレスに固定減分だけ先行することが好ましい。固定減分は、−1であることがより好ましい。   The address of the data page transferred between the array of memory cells and the page buffer precedes the address of the data page transferred between the cache buffer and the host in the array by a fixed decrement. It is preferable. The fixed decrement is more preferably -1.

本発明によれば、また、次のステップを含む方法が提供される。(a)ホストによって、フラッシュメモリに第一のデータ・ページを取り出すよう指図する第一のコマンドを発するステップ。(b)ホストによって、フラッシュメモリに第二のデータ・ページを取り出すよう指図する第二のコマンドを発するステップ。(c)第一および第二のコマンドに応答して、メモリ・セルのアレイからページ・バッファへ第二のデータ・ページを、そしてキャッシュ・バッファからホストへ第一のデータ・ページを、少なくとも部分的に実質的に同時に取り出すステップ。なお、第二のデータ・ページのアドレスは、アレイにおいて、第一のデータ・ページのアドレスに先行する。   According to the present invention, a method including the following steps is also provided. (A) issuing a first command by the host to instruct the flash memory to retrieve the first data page; (B) issuing a second command by the host to instruct the flash memory to retrieve the second data page; (C) in response to the first and second commands, at least a portion of the second data page from the array of memory cells to the page buffer and the first data page from the cache buffer to the host. Removing substantially simultaneously. Note that the address of the second data page precedes the address of the first data page in the array.

第二のデータ・ページのアドレスは、アレイにおいて、第一のデータ・ページのアドレスの直前に位置することが好ましい。   The address of the second data page is preferably located in the array immediately before the address of the first data page.

本発明によれば、また、次のものを含むフラッシュメモリ・デバイスが提供される。(a)複数のデータ・ページを記憶するためのメモリ・セルのアレイ。(b)ページ・バッファ。(c)キャッシュ・バッファ。そして(d)メモリ・セルのアレイとページ・バッファとの間で複数のデータ・ページの一つを、複数のデータ・ページのもう一つがキャッシュ・バッファとホストとの間で転送される間に、少なくとも部分的に同時に転送するための、複数のコマンドに反応するロジック・メカニズム。なお、メモリ・セルのアレイとページ・バッファとの間で転送されるデータ・ページのアドレスは、アレイにおいて、キャッシュ・バッファとページ・ホストとの間で転送されるデータ・ページのアドレスに、1より大きく超過する。   In accordance with the present invention, there is also provided a flash memory device comprising: (A) An array of memory cells for storing a plurality of data pages. (B) Page buffer. (C) Cache buffer. And (d) one of the plurality of data pages between the array of memory cells and the page buffer, while the other of the plurality of data pages is transferred between the cache buffer and the host. , A logic mechanism that reacts to multiple commands to at least partially transfer at the same time. Note that the address of the data page transferred between the array of memory cells and the page buffer is the address of the data page transferred between the cache buffer and the page host in the array. Greater exceed.

本発明によれば、また、次のステップを含む方法が提供される。(a)ホストによって、フラッシュメモリに第一のデータ・ページを取り出すよう指図する第一のコマンドを発するステップ。(b)ホストによって、フラッシュメモリに第二のデータ・ページを取り出すよう指図する第二のコマンドを発するステップ。(c)第一および第二のコマンドに応答して、メモリ・セルのアレイからページ・バッファへ第二のデータ・ページを、そしてキャッシュ・バッファからホストへ第一のデータ・ページを、少なくとも部分的に実質的に同時に取り出すステップ。なお、第二のデータ・ページのアドレスは、アレイにおいて、第一のデータ・ページのアドレスを、1より大きく超過する。   According to the present invention, a method including the following steps is also provided. (A) issuing a first command by the host to instruct the flash memory to retrieve the first data page; (B) issuing a second command by the host to instruct the flash memory to retrieve the second data page; (C) in response to the first and second commands, at least a portion of the second data page from the array of memory cells to the page buffer and the first data page from the cache buffer to the host. Removing substantially simultaneously. Note that the address of the second data page exceeds the address of the first data page by more than 1 in the array.

本発明の、他の特徴および利点は、以下の図面および説明文から明らかになる。   Other features and advantages of the present invention will become apparent from the following drawings and description.

本発明を、その実施例に関連させてより良く理解するために、添付の図面を参照する。図中、類似する数字は、全体を通して、対応するセクションあるいは素子を指す。
本発明によるフラッシュメモリ・デバイスを示すブロック図である。 前のデータ・ページを読み取るためにホストとフラッシュメモリとの間で適用されるプロセスを表す、本発明の方法のタイミング図である。
For a better understanding of the present invention in connection with its embodiments, reference is made to the accompanying drawings. In the drawings, like numerals refer to corresponding sections or elements throughout.
1 is a block diagram illustrating a flash memory device according to the present invention. FIG. FIG. 6 is a timing diagram of the method of the present invention representing a process applied between a host and flash memory to read a previous data page.

本発明は、ブロック内の前のデータ・ページおよび次のデータ・ページの両方のキャッシュ読み出しオペレーションが可能なように構成されたフラッシュメモリ・デバイスおよび方法である。そのような構成は、例えば、時間の経過に従って異なるタイプのイベント
を記録し、時々最近の記録から特定なタイプのイベントを素早く回顧して読み取るというオプションを必要とするシステムに要求される。
The present invention is a flash memory device and method configured to allow cache read operations for both previous and next data pages in a block. Such a configuration is required, for example, for systems that require the option of recording different types of events over time, and sometimes retrospectively reading specific types of events from recent records.

そのような必要性に応える既存の方法は、正規の(キャッシュされない)ページ読み取りオペレーションを適用する。したがって、従来の技術による正規の読み取りコマンドとは異なり、本発明によるフラッシュメモリ・デバイスの構成は、キャッシュ・バッファの優位性を利用しながら、どの順序におけるデータ・ページの読み取り必要性にも対応する。   Existing methods that address such a need apply regular (non-cached) page read operations. Thus, unlike regular read commands according to the prior art, the configuration of the flash memory device according to the present invention addresses the need to read data pages in any order while taking advantage of the advantages of the cache buffer. .

本発明によるフラッシュメモリ・デバイスは、データ・ページを記憶するための、メモリ・セルのメモリ・アレイを含む。フラッシュメモリ・デバイスを接続させたホスト・デバイスは、入出力(I/O)インターフェイス・ユニットを通して、データ信号を介してデータ・ページを転送する。   A flash memory device according to the present invention includes a memory array of memory cells for storing data pages. A host device connected to the flash memory device transfers a data page via a data signal through an input / output (I / O) interface unit.

本発明によるフラッシュメモリ・デバイスは、ページ・バッファおよびキャッシュ・バッファの、二つのバッファを含む。データ・ページ全体が、ページ・バッファからメモリ・アレイへ書き込まれ、また、メモリ・アレイからページ・バッファへ読み出されるが、キャッシュ・バッファは、ホスト・デバイスとキャッシュ・バッファとの間での、そしてページ・バッファとメモリ・アレイとの間での同時データ転送を可能にするために提供されている。同時データ転送は、フラッシュメモリ・デバイスの全体的なスループットを向上させる。   The flash memory device according to the present invention includes two buffers, a page buffer and a cache buffer. The entire data page is written from the page buffer to the memory array and read from the memory array to the page buffer, but the cache buffer is between the host device and the cache buffer, and Provided to allow simultaneous data transfer between the page buffer and the memory array. Simultaneous data transfer improves the overall throughput of the flash memory device.

ロジック・メカニズムは、フラッシュメモリ・デバイスとホストとの間でデータ・ページを転送するために、ホストから受信したキャッシュ読み出しコマンドに反応する。本文におけるキャッシュ読み出しコマンドは、フラッシュメモリ・デバイスにページ・バッファおよびキャッシュ・バッファの両方を利用するよう指図するコマンドと定義する。ロジック・メカニズムは、「通常の」キャッシュ読み出しコマンド(すなわち、1だけ増加させたアドレスの表示である正のインクリメント)および「逆の」キャッシュ読み出しコマンド(すなわち、1だけ減少させたアドレスの表示である負のインクリメント)の、二つの異なるコマンドに反応する。   The logic mechanism is responsive to a cache read command received from the host to transfer a data page between the flash memory device and the host. The cache read command in this text is defined as a command that instructs a flash memory device to use both a page buffer and a cache buffer. The logic mechanism is a “normal” cache read command (ie, a positive increment that is an indication of an address incremented by one) and a “reverse” cache read command (ie, an indication of an address that is decremented by one). Reacts to two different commands (negative increments).

したがって、ホストから「キャッシュで読み出す」コマンドを受信すると、最後に取り出したデータ・ページへのアドレスは、以降の読み取りオペレーションによる使用に対して、1だけ減少する、あるいは1だけ増加する。そのような方法は、最大限にスループットを維持しながら、デザインの柔軟性を向上させる。   Thus, upon receipt of a “read in cache” command from the host, the address to the last fetched data page is decremented or incremented by 1 for use by subsequent read operations. Such a method increases design flexibility while maintaining maximum throughput.

本文で説明する模範的なコマンド・コードおよびシーケンスについては、ミクロン・テクノロジーズ社の品番MT29F2G08AABWPのデバイスが本発明の原理に従って修正された方式を参照している。しかしながら、本発明の原理が、本産業におけるどのフラッシュメモリ・デバイスを修正するためにも、類似のコマンド・コードおよびシーケンス上で共通に用いることができるということは、当業者には明らかである。   For the exemplary command codes and sequences described herein, reference is made to a scheme in which the Micron Technologies part number MT29F2G08AABWP device has been modified in accordance with the principles of the present invention. However, it will be apparent to those skilled in the art that the principles of the present invention can be commonly used on similar command codes and sequences to modify any flash memory device in the industry.

「逆の」キャッシュ読み出しコマンドのオペレーション方式は、本技術において既知である「通常の」キャッシュ読み出しコマンドのオペレーション方式に従っているが、唯一の違いは、「通常の」キャッシュ読み出しコマンドが、メモリ・アレイから取り出すべきデータ・ページのアドレスを1だけ増加させるようロジック・メカニズムを作動させるのに対して、「逆の」キャッシュ読み出しコマンドは、このアドレスを1だけ減少させるようロジック・メカニズムを作動させる。これを除くと、(レディ/ビジー信号の機能、そして正規の読み取りコマンドのためのコマンド・コード0x30、および最後に要求されたデータ・ページを取り出すためのコマンド・コード0x3Fの実行を含み)両キャッシ
ュ読み出しコマンドの実行は、同じロジックに基づいている。
The “reverse” cache read command operation scheme follows the “normal” cache read command operation scheme known in the art, the only difference being that the “normal” cache read command is While the logic mechanism is activated to increase the address of the data page to be fetched by one, a “reverse” cache read command activates the logic mechanism to decrease this address by one. Except this, both caches (including the function of ready / busy signal and execution of command code 0x30 for legitimate read command and command code 0x3F to retrieve the last requested data page) The execution of the read command is based on the same logic.

二つの「通常」および「逆の」キャッシュ読み出しコマンドを提供する一つの方法としては、類似のコマンド・コードを用いることである。例えば、0x32読み取りコマンド・コードによって、以下のように一対のキャッシュ読み出しコマンドをつくることである。「通常の」キャッシュ読み出しコマンドを示す0x31コマンド・コード、そして「逆の」キャッシュ読み出しコマンドを示す0x32コマンド・コード。そのように一対のキャッシュ読み出しコマンドをつくることは、販売業者に特有なことでなく、本技術において既知であるどのフラッシュデバイスのキャッシュ読み出しコマンド・セットを修正するためにも適用できる。   One way to provide two “normal” and “reverse” cache read commands is to use similar command codes. For example, a 0x32 read command code may create a pair of cache read commands as follows: A 0x31 command code indicating a "normal" cache read command and a 0x32 command code indicating a "reverse" cache read command. Creating such a pair of cache read commands is not vendor specific and can be applied to modify any flash device cache read command set known in the art.

本発明によるフラッシュメモリ・デバイス10を示すブロック図である図1を参照する。フラッシュメモリ・デバイス10は、データ・ページを記憶するために、C1からCnのメモリ・セルからなるメモリ・アレイ12を含む。フラッシュメモリ・デバイスを接続させたホスト18は、入出力(I/O)インターフェイス・ユニット28を通して、データ信号22を介してデータ・ページを転送する。   Reference is made to FIG. 1, which is a block diagram illustrating a flash memory device 10 according to the present invention. The flash memory device 10 includes a memory array 12 consisting of C1 to Cn memory cells for storing data pages. The host 18 connected to the flash memory device transfers the data page via the data signal 22 through the input / output (I / O) interface unit 28.

データ・ページ全体が、ページ・バッファ14からメモリ・アレイ12へ書き込まれる、あるいはメモリ・アレイ12からページ・バッファ14へ読み出される。フラッシュメモリ・デバイス10は、追加のデータ・バッファ、すなわちキャッシュ・バッファ16を含む。これは、ホスト18とキャッシュ・バッファ16との間での、そしてページ・バッファ14とメモリ・アレイ12との間での同時データ転送を可能にするためのものである。   The entire data page is written from page buffer 14 to memory array 12 or read from memory array 12 to page buffer 14. The flash memory device 10 includes an additional data buffer, the cache buffer 16. This is to allow simultaneous data transfer between the host 18 and the cache buffer 16 and between the page buffer 14 and the memory array 12.

また、フラッシュメモリ・デバイスとホスト18との間でデータ・ページを転送するために、ロジック・メカニズム20が設けられている。ロジック・メカニズム20は、制御信号24およびデータ信号22を介してホスト18から受信した「通常」および「逆の」キャッシュ読み出しコマンドに反応する。   A logic mechanism 20 is also provided for transferring data pages between the flash memory device and the host 18. The logic mechanism 20 responds to “normal” and “reverse” cache read commands received from the host 18 via control signals 24 and data signals 22.

オプションとして、ホスト18が読み取るのにページ「N」がレディであるということをホスト18に通知するステータス情報を、ロジック・メカニズム20に接続されたメモリ・ステータス・レジスタ27からホスト18へ提供する。ステータス情報は、入出力(I/O)インターフェイス・ユニット28を通して、メモリ・ステータス・レジスタ27からホスト・デバイス20へ転送される。   Optionally, status information is provided from the memory status register 27 connected to the logic mechanism 20 to the host 18 informing the host 18 that the page “N” is ready for the host 18 to read. Status information is transferred from the memory status register 27 to the host device 20 through an input / output (I / O) interface unit 28.

さて、本発明の方法のタイミング図30である図2を参照する。これは、以前のデータ・ページを読み取るために、ホスト18とフラッシュメモリ・デバイス10との間で交換される信号を示す。   Reference is now made to FIG. 2, which is a timing diagram 30 of the method of the present invention. This shows the signals exchanged between the host 18 and the flash memory device 10 to read the previous data page.

フラッシュメモリ・デバイス10を読み取りに利用できることをホスト18に通知する「レディ」信号32をフラッシュメモリ・デバイス10から受信すると、ホスト18は、フラッシュメモリ・デバイス10へ、5つのADRESSサイクルと共に正規の読み取りコマンド34を(例えば、コマンド・コード0x30として)送信し、フラッシュメモリ・デバイス10にアドレス「N」に記憶したデータ・ページ(本文ではページ「N」と呼ぶ)を取り出すよう要求し、読み取りの完了を待つ。   Upon receipt of a “ready” signal 32 from the flash memory device 10 that informs the host 18 that the flash memory device 10 is available for reading, the host 18 sends a regular read to the flash memory device 10 along with five ADDRESS cycles. Sends command 34 (eg, as command code 0x30), requests flash memory device 10 to retrieve the data page stored at address “N” (referred to as page “N” in the text), and completes reading Wait for.

ホスト18から正規の読み取りコマンド34を受信すると、フラッシュメモリ・デバイス10は、メモリ・アレイからページ・バッファへデータ・ページ「N」を取り出す(プロセス36)(典型的に、30μ秒間続く)。   Upon receipt of a legitimate read command 34 from the host 18, the flash memory device 10 retrieves the data page “N” from the memory array to the page buffer (process 36) (typically lasting 30 μs).

メモリ・アレイからページ・バッファへデータ・ページ「N」を完全に取り出した後、フラッシュメモリ・デバイス10は、ホスト12が読み取るのにページ「N」がレディであることをホスト18に通知する第二の「レディ」信号38を送信する。択一的に、ホスト18は、ホスト18が読み取るのにページ「N」がレディであることをホスト18に通知する、フラッシュメモリ・デバイス10内に実装されたメモリ・ステータス・レジスタ27をポーリングする。   After completely retrieving the data page “N” from the memory array to the page buffer, the flash memory device 10 notifies the host 18 that the page “N” is ready for the host 12 to read. A second “ready” signal 38 is transmitted. Alternatively, host 18 polls memory status register 27 implemented in flash memory device 10 that informs host 18 that page “N” is ready for host 18 to read. .

この時点で、ホスト18は、ページ・バッファからページ「N」を読み出す代わりに、フラッシュメモリ・デバイス10に次のコマンド、すなわち、フラッシュメモリ・デバイス10から前のデータ・ページ(ページ「N−1」)を取り出すようフラッシュメモリ・デバイス10に要求する(例えば、コマンド・コード0x32として)「逆の」キャッシュ読み出しコマンド40を発する。   At this point, instead of reading the page “N” from the page buffer, the host 18 sends the next command to the flash memory device 10, ie, the previous data page (page “N−1”) from the flash memory device 10. ")" Is requested to the flash memory device 10 to retrieve (eg, as command code 0x32) and a "reverse" cache read command 40 is issued.

この「逆の」キャッシュ読み出しコマンド40は、フラッシュメモリ・デバイス10に、ページ・バッファからキャッシュ・バッファへ、(メモリ・アレイから最近読み出したページのデータを記憶している)ページ「N」のコンテンツを転送させる(プロセス42)。このプロシージャは、典型的に1.5μ秒の時間がかかる。   This “reverse” cache read command 40 causes the flash memory device 10 to copy the contents of page “N” (which stores the data of the page most recently read from the memory array) from the page buffer to the cache buffer. Are transferred (process 42). This procedure typically takes 1.5 μs.

ページ・バッファからキャッシュ・バッファへページ「N」を完全に転送した後、データ・ページ・アドレスを1だけ減少させる(すなわち、データ・ページ・アドレスがN−1になる)。そして、フラッシュメモリ・デバイス10は、ホスト18が読み取るのにページ「N」がレディであるとホスト18に通知する、第三の「レディ」信号44を送信する。この時点で、フラッシュメモリ・デバイス10は、第三の「レディ」信号44を送信すると同時に、メモリ・アレイからページ・バッファへ前のデータ・ページ(ページ「N−1」)を取り出す(プロセス46)。   After the page “N” is completely transferred from the page buffer to the cache buffer, the data page address is decremented by 1 (ie, the data page address becomes N−1). The flash memory device 10 then transmits a third “ready” signal 44 that notifies the host 18 that the page “N” is ready for reading by the host 18. At this point, flash memory device 10 sends a third “ready” signal 44 and simultaneously fetches the previous data page (page “N−1”) from the memory array to the page buffer (process 46). ).

フラッシュメモリ・デバイス10から第三の「レディ」信号44を受信すると、ホスト18は、キャッシュ・バッファからページ「N」を読み取る(プロセス48)。この読み取りオペレーションは、メモリ・アレイからページ・バッファへのページ「N−1」の取り出し(プロセス46)と同時に、ホスト18が実行する。   Upon receiving a third “ready” signal 44 from flash memory device 10, host 18 reads page “N” from the cache buffer (process 48). This read operation is performed by the host 18 simultaneously with fetching page “N−1” from the memory array to the page buffer (process 46).

ホスト18がキャッシュ・バッファからページ「N」を完全に読み取った後、ホスト18は、第二の「逆の」キャッシュ読み出しコマンド50を発して、フラッシュメモリ・デバイス10に、フラッシュメモリ・デバイス10から前のデータ・ページ(ページ「N−2」)を取り出すよう要求する。   After host 18 has completely read page “N” from the cache buffer, host 18 issues a second “reverse” cache read command 50 to flash memory device 10 from flash memory device 10. Request to retrieve previous data page (page "N-2").

第二の「逆の」キャッシュ読み出しコマンド50は、メモリ・アレイからページ・バッファへのページ「N−1」の転送が終了した後にのみ、フラッシュメモリ・デバイス10に、ページ・バッファからキャッシュ・バッファへページ「N−1」のコンテンツを転送させる(プロセス52)。   The second “reverse” cache read command 50 sends the page buffer to cache buffer from the page buffer only after the transfer of page “N−1” from the memory array to the page buffer is complete. The contents of the page “N-1” are transferred (process 52).

ページ・バッファからキャッシュ・バッファへページ「N−1」を完全に転送させた後、データ・ページ・アドレスを1だけ減少させる(すなわち、データ・ページ・アドレスがN−2になる)。そして、フラッシュメモリ・デバイス10は、ホスト18が読み取るのにページ「N−1」がレディであるとホスト18に通知する、第四の「レディ」信号54を送信する。この時点で、フラッシュメモリ・デバイス10は、第四の「レディ」信号54を送信すると同時に、メモリ・アレイからページ・バッファへ前のデータ・ページ(ページ「N−2」)を取り出す(プロセス56)。   After the page “N−1” is completely transferred from the page buffer to the cache buffer, the data page address is decremented by 1 (ie, the data page address becomes N−2). The flash memory device 10 then transmits a fourth “ready” signal 54 that notifies the host 18 that the page “N−1” is ready for reading by the host 18. At this point, flash memory device 10 sends a fourth “ready” signal 54 and simultaneously fetches the previous data page (page “N−2”) from the memory array to the page buffer (process 56). ).

フラッシュメモリ・デバイス10から第四の「レディ」信号54を受信すると、ホスト
18はキャッシュ・バッファからページ「N−1」を読み取る。この読み取りオペレーションは、メモリ・アレイからページ・バッファへのページ「N−2」の取り出し(プロセス56)と同時に、ホスト18が実行する。
Upon receipt of a fourth “ready” signal 54 from flash memory device 10, host 18 reads page “N−1” from the cache buffer. This read operation is performed by the host 18 simultaneously with fetching page “N-2” from the memory array to the page buffer (process 56).

「逆の」キャッシュ読み出しオペレーションのシーケンスを終止させるために、ホスト18は、フラッシュメモリ・デバイス10に、フラッシュメモリ・デバイス10から最後の要求データ・ページ(例えば、ページ「N−M」、この場合、M>2)を読み取るよう(例えば、0x3Fコマンド・コードとして)キャッシュ読み出し終了コマンド60を発する。   To end the sequence of “reverse” cache read operations, the host 18 sends the flash memory device 10 the last requested data page from the flash memory device 10 (eg, page “N-M”, in this case). , M> 2) (for example, as a 0x3F command code), issue a cache read end command 60.

キャッシュ読み出し終了コマンド60は、フラッシュメモリ・デバイス10に、ページ・バッファからキャッシュ・バッファへページ「N−M」のコンテンツを転送させる(プロセス62)。   The end cache read command 60 causes the flash memory device 10 to transfer the contents of page “NM” from the page buffer to the cache buffer (process 62).

ページ・バッファからキャッシュ・バッファへページ「N−M」を完全に転送した後、フラッシュメモリ・デバイス10は、ホスト18が読み取るのにページ「N−M」がレディであるとホスト18に通知する最終「レディ」信号64を送信する。   After completely transferring the page “NM” from the page buffer to the cache buffer, the flash memory device 10 notifies the host 18 that the page “NM” is ready for the host 18 to read. A final “ready” signal 64 is transmitted.

最終段階で、フラッシュメモリ・デバイス10から最終「レディ」信号64を受信すると、ホスト18は、キャッシュ・バッファから最後のページ「N−M」を読み出し始める(プロセス68)。   At the final stage, upon receiving the final “ready” signal 64 from the flash memory device 10, the host 18 begins to read the last page “NM” from the cache buffer (process 68).

第二の実施例によれば、本発明によるフラッシュメモリ・デバイスは、ページ・バッファおよびキャッシュ・バッファの両方を採用して、ホストから受信した、連続で読み込んだデータ・ページ間の任意のアドレス増分(すなわち、非ゼロ整数)を特定するキャッシュ読み出しコマンドに応答して作動する。このように、ロジック・メカニズムは、従来の技術の場合のように物理的に組み込まれた+1の増分だけでなく、あるいは本発明の第一の実施例の場合のように物理的に組み込まれた−1の減分だけでなく、任意のアドレス増分からのデータ・ページを取り出すようフラッシュメモリ・デバイスに指図するキャッシュ読み出しコマンドに反応するよう構成される。   According to a second embodiment, a flash memory device according to the present invention employs both a page buffer and a cache buffer to increase any address increment between consecutively read data pages received from the host. Operates in response to a cache read command that identifies (ie, a non-zero integer). Thus, the logic mechanism is not only physically incorporated as in the case of the prior art, but also physically incorporated as in the first embodiment of the present invention. It is configured to respond to a cache read command that directs the flash memory device to fetch a data page from any address increment as well as a -1 decrement.

注意すべきことは、任意の増分によって目標とするアドレスが、メモリ・アレイ・サイズの制約内になければならないことである。また、負のアドレス「増分」は、本文においてアドレス減分と定義することにも注意すべきである。   Note that the target address by any increment must be within memory array size constraints. It should also be noted that a negative address “increment” is defined as address decrement in the text.

例えば、フラッシュメモリへ、+5のアドレス増分を送信することは、フラッシュメモリに、キャッシュ読み出しが終止されるまで、アドレス「N」、「N+5」、「N+10」などに記憶したページを戻すよう指図する。また、フラッシュメモリへ−5のアドレス増分を送信することは、フラッシュメモリに、キャッシュ読み出しが終止されるまで、アドレス「N」、「N−5」、「N−10」などに記憶したページを戻すよう指図する。   For example, sending a +5 address increment to the flash memory instructs the flash memory to return the page stored at address "N", "N + 5", "N + 10", etc. until the cache read is terminated. . Also, sending an address increment of −5 to the flash memory means that the page stored in the address “N”, “N-5”, “N-10”, etc., will be sent to the flash memory until the cache read is terminated. Instruct to return.

ホストが任意のアドレス増分を設定して、これをパラメータ・コマンドとしてフラッシュメモリ・デバイスへ送信することが好ましい。このパラメータ・コマンドは、無効にされるまで、すべての以降のキャッシュ読み出しコマンドに関わる。   Preferably, the host sets an arbitrary address increment and sends it as a parameter command to the flash memory device. This parameter command is relevant to all subsequent cache read commands until invalidated.

これは、例えば、フラッシュメモリ・デバイスに任意のアドレス増分値(例えば「5」)を特定するコマンド・コード0xAAを、最初にフラッシュメモリ・デバイスへ送信することによって、実現できる。その場合、以降の(「逆」あるいは「通常」のいずれかの)キャッシュ読み出しコマンドは、すべてこの値に関連する。「逆の」キャッシュ読み出しコマンドの場合には、コマンド・コード0xAAを介して受信した値は、減分数(「−
5」)の表示であり、「通常の」キャッシュ読み出しコマンドの場合には、この値は、増分数(「+5」)の表示である。そのようなプロシージャは、ホストから受信する連続的なキャッシュ読み出しコマンドがアドレス増分コマンドを伴う限り(または、キャッシュ読み出し終了コマンドがアサートされるまで)継続する。
This can be accomplished, for example, by first sending to the flash memory device a command code 0xAA that identifies any address increment value (eg, “5”) to the flash memory device. In that case, all subsequent cache read commands (either “reverse” or “normal”) are associated with this value. In the case of a “reverse” cache read command, the value received via command code 0xAA is the decrement (“−
In the case of a “normal” cache read command, this value is an indication of an increment number (“+5”). Such a procedure continues as long as successive cache read commands received from the host are accompanied by an address increment command (or until a cache read end command is asserted).

択一的に、ホストから受信するキャッシュ読み出しコマンドの各々には、このキャッシュ読み出しコマンドに対してアドレス増分を特定する設定パラメータ・コマンドが付随する。そのようなケースは、例えば、各々のキャッシュ読み出しコマンドの後、フラッシュメモリ・デバイスへコマンド・コード0xAAを送信することによって実行できる。   Alternatively, each cache read command received from the host is accompanied by a configuration parameter command that identifies the address increment for the cache read command. Such a case can be performed, for example, by sending a command code 0xAA to the flash memory device after each cache read command.

択一的に、ホストから受信した各々のキャッシュ読み出しコマンドに付随するパラメータの各々は、アドレス増分ではなく、明示的な特定データ・ページ・アドレスの表示である。第一の読み取りコマンドに続くすべての読み取りコマンドがキャッシュ読み出しコマンドとして実行されるので、第二の実施例のこの択一的な実行は、明示アドレスを特定する従来の技術による非キャッシュ読み出しコマンドとは異なる。   Alternatively, each of the parameters associated with each cache read command received from the host is an explicit specific data page address indication rather than an address increment. Since all read commands following the first read command are executed as a cache read command, this alternative execution of the second embodiment is a prior art non-cache read command that identifies an explicit address. Different.

ゆえに、従来の技術による正規の読み取りコマンドと違って、本発明によるフラッシュメモリ・デバイスの構成は、キャッシュ・バッファの優位性を利用しながら、データ・ページをどの順序ででも読み取るという必要性に応える。   Thus, unlike regular read commands according to the prior art, the configuration of the flash memory device according to the present invention addresses the need to read data pages in any order while taking advantage of the cache buffer. .

本発明がNANDフラッシュメモリ・デバイスに関するものである点に留意する必要がある。しかしながら、本発明の範囲内で他の実施例も可能であるため、ホストから受信したキャッシュ読み出しコマンドに応答して作動するように適用できるどのデバイスおよび方法にも関連する、と理解できる。   It should be noted that the present invention relates to NAND flash memory devices. However, it will be appreciated that other embodiments are possible within the scope of the present invention, and thus relate to any device and method that can be adapted to operate in response to a cache read command received from a host.

本発明をその特定な実施例に関して説明したが、さらに修正を施すことは当業者にとって可能であるのだから、上記説明は限定を意味していないと理解すべきである。また、そのような修正は、添付の請求項の範囲内でカバーすることを意図している。   Although the present invention has been described with respect to specific embodiments thereof, it should be understood that the above description is not meant to be limiting, as further modifications will be possible to those skilled in the art. Such modifications are also intended to be covered within the scope of the appended claims.

Claims (1)

(a)複数のデータ・ページを記憶するためのメモリ・セルのアレイ、
(b)前記複数のデータ・ページを取り出すための少なくとも一つのバッファ、そして
(c)前記取り出された複数のデータ・ページをホストへ転送するための、複数のコマンドに反応するロジック・メカニズムからなるフラッシュメモリ・デバイスであって、
第二の、そして以降のコマンドの各々が、前記アレイ内における、直前のコマンドによって取り出されたデータ・ページのアドレスに先行するアドレスのデータ・ページを取り出すようフラッシュメモリ・デバイスに指図し、そして、前記複数のコマンドの少なくとも一つが、前記取り出されるデータ・ページの明示的に指定したアドレスを欠いている、フラッシュメモリ・デバイス。
(A) an array of memory cells for storing a plurality of data pages;
(B) comprising at least one buffer for retrieving the plurality of data pages; and (c) a logic mechanism responsive to a plurality of commands for transferring the retrieved plurality of data pages to a host. A flash memory device,
Each of the second and subsequent commands directs the flash memory device to retrieve a data page at an address in the array that precedes the address of the data page retrieved by the previous command; and A flash memory device, wherein at least one of the plurality of commands lacks an explicitly specified address of the retrieved data page.
JP2013069832A 2013-03-28 2013-03-28 Flash memory device and method Pending JP2013178787A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013069832A JP2013178787A (en) 2013-03-28 2013-03-28 Flash memory device and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013069832A JP2013178787A (en) 2013-03-28 2013-03-28 Flash memory device and method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2008539612A Division JP5274257B2 (en) 2005-11-15 2006-11-13 Flash memory device and method

Publications (1)

Publication Number Publication Date
JP2013178787A true JP2013178787A (en) 2013-09-09

Family

ID=49270304

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013069832A Pending JP2013178787A (en) 2013-03-28 2013-03-28 Flash memory device and method

Country Status (1)

Country Link
JP (1) JP2013178787A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113515232A (en) * 2021-04-26 2021-10-19 深圳忆联信息系统有限公司 Method and device for improving SSD low-command deep reading performance, computer equipment and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01269139A (en) * 1988-04-20 1989-10-26 Sharp Corp Random access memory
JP2004273098A (en) * 2003-03-05 2004-09-30 Hynix Semiconductor Inc Bank divider of flash memory
JP2006202491A (en) * 2006-04-25 2006-08-03 Micronics Internatl Co Ltd Floating gate memory module on semiconductor substrate

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01269139A (en) * 1988-04-20 1989-10-26 Sharp Corp Random access memory
JP2004273098A (en) * 2003-03-05 2004-09-30 Hynix Semiconductor Inc Bank divider of flash memory
JP2006202491A (en) * 2006-04-25 2006-08-03 Micronics Internatl Co Ltd Floating gate memory module on semiconductor substrate

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113515232A (en) * 2021-04-26 2021-10-19 深圳忆联信息系统有限公司 Method and device for improving SSD low-command deep reading performance, computer equipment and storage medium
CN113515232B (en) * 2021-04-26 2023-08-29 深圳忆联信息系统有限公司 Method, device, computer equipment and storage medium for improving SSD low order depth reading performance

Similar Documents

Publication Publication Date Title
JP5274257B2 (en) Flash memory device and method
US8417901B2 (en) Combining write commands to overlapping addresses or to a specific page
US10613763B2 (en) Memory device having multiple read buffers for read latency reduction
US10114589B2 (en) Command control for multi-core non-volatile memory
US8667229B2 (en) Data access method of a memory device
US7908435B2 (en) Disk controller providing for the auto-transfer of host-requested-data from a cache memory within a disk memory system
US20110029741A1 (en) Data management method and memory deivce
CN106951374B (en) Method for checking block page address and apparatus thereof
KR20150050457A (en) Solid state memory command queue in hybrid device
KR20220037333A (en) Read handling in zoned namespace devices
GB2500082A (en) Delaying the transmission of data from a memory device until the output buffer of the memory device contains the data for the transfer
US20050060441A1 (en) Multi-use data access descriptor
US20210103445A1 (en) Method and apparatus for preprocessing data transfer commands
EP1631911B1 (en) Method and device for transferring data between a main memory and a storage device
JP2007164355A (en) Non-volatile storage device, data reading method therefor, and data writing method therefor
TWI707233B (en) Flash memory controller capable of improving iops performance and corresponding method
JP2013178787A (en) Flash memory device and method
US11029878B2 (en) Information processing system
JP7170093B2 (en) Improved read-ahead capabilities for storage devices
WO2017168905A1 (en) Memory control device, storage device, and information processing system
US20220100681A1 (en) Method For PRP/SGL Handling For Out-Of-Order NVME Controllers
JPWO2018003244A1 (en) Memory controller, memory system and information processing system
TW200935427A (en) Control method, memory, and process system utilizing the same
JP2006157073A (en) Video/audio signal recorder
WO2006121443A2 (en) Direct memory access (dma) method and apparatus and dma for video processing

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140117

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140624