Nothing Special   »   [go: up one dir, main page]

JP2008299455A - Data storage device and data management method - Google Patents

Data storage device and data management method Download PDF

Info

Publication number
JP2008299455A
JP2008299455A JP2007142734A JP2007142734A JP2008299455A JP 2008299455 A JP2008299455 A JP 2008299455A JP 2007142734 A JP2007142734 A JP 2007142734A JP 2007142734 A JP2007142734 A JP 2007142734A JP 2008299455 A JP2008299455 A JP 2008299455A
Authority
JP
Japan
Prior art keywords
data
page
written
block
semiconductor memory
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
JP2007142734A
Other languages
Japanese (ja)
Inventor
Hironari Ishikawa
裕也 石川
Shingo Aso
伸吾 麻生
Sadaji Takano
貞治 高野
Toshifumi Nishiura
敏文 西浦
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2007142734A priority Critical patent/JP2008299455A/en
Publication of JP2008299455A publication Critical patent/JP2008299455A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Read Only Memory (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a data storage device and a data management method for improving a processing speed when reading data from a non-volatile semiconductor memory. <P>SOLUTION: Data corresponding to a plurality of types of data ID are written in each block 21 of the non-volatile semiconductor memory 1, and when data are written in each block 21, the data ID of data written in a page and information showing the position of a page in which the data corresponding to the other data ID have been finally written are stored in the redundancy area 24 of the finally written page of each block 21. Since host equipment can access desired data by instantaneously creating an ID/page map 61 based on information of the redundant area 24, it is possible to remarkably improve a processing speed when reading data. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、不揮発性半導体メモリを記憶媒体とし、ホスト機器に着脱自在なデータ記憶装置及びこのデータ記憶装置におけるデータ管理方法に関する。
に関する。
The present invention relates to a data storage device using a nonvolatile semiconductor memory as a storage medium and detachable from a host device, and a data management method in the data storage device.
About.

従来から、NAND型の不揮発性半導体メモリ(フラッシュメモリ)を主たる記憶媒体とし、例えばPC(Personal Computer)や携帯電話機、携帯型AV(Audio/Video)機器等のホスト機器に着脱自在な可搬性のデータ記憶装置(いわゆるメモリカード)が知られている。このメモリカードにおいては、例えばFAT(File Allocation Tables)ファイルシステム等のホスト機器側のファイル管理システムによってデータの書き込み及び読み出しの管理が行われる。また、メモリカード内部では、不揮発性半導体メモリ内の物理領域は複数のブロックに分割され、当該ブロックがデータの消去単位となっている。また、ブロックはさらに複数のページに分割され、当該ページがデータの書き込み及び読み出し単位となっている。   Conventionally, NAND-type non-volatile semiconductor memory (flash memory) has been used as the main storage medium. For example, it is portable and detachable from a host device such as a PC (Personal Computer), a mobile phone, or a portable AV (Audio / Video) device. Data storage devices (so-called memory cards) are known. In this memory card, for example, data writing and reading are managed by a file management system on the host device side such as a FAT (File Allocation Tables) file system. In the memory card, the physical area in the non-volatile semiconductor memory is divided into a plurality of blocks, which are used as data erasure units. The block is further divided into a plurality of pages, and the page is a unit for writing and reading data.

上記ファイル管理システムを用いてデータの書き込み、読み出し及び消去を行う際には、ホスト機器のシステム側から与えられる論理アドレスと、不揮発性半導体メモリ内の上記ページの物理アドレスとが一意に対応していないため、その対応関係をメモリカード内部で管理する必要がある。この管理の方法の一つとして、論理アドレスと物理アドレスとの対応関係を、メモリカード内部の不揮発性半導体メモリ上に記録し、対応関係に変化がある度に更新するという方法がある。しかしながら、この方法では、システム全体の処理速度が低下してしまうという欠点や、処理中の電源切断によって管理情報が消失した場合の復旧が困難であるという欠点がある。   When writing, reading and erasing data using the file management system, the logical address given from the system side of the host device and the physical address of the page in the nonvolatile semiconductor memory uniquely correspond to each other. Therefore, it is necessary to manage the correspondence within the memory card. As one of the management methods, there is a method in which a correspondence relationship between a logical address and a physical address is recorded on a nonvolatile semiconductor memory inside a memory card and updated whenever the correspondence relationship changes. However, this method has a drawback that the processing speed of the entire system is reduced, and that it is difficult to recover when management information is lost due to power-off during processing.

そこで上記欠点を補うための方法として、システムの起動時(電源投入時)等の必要なときに、不揮発性半導体メモリ内部の状態を基に、論理アドレスと物理アドレスとの対応関係を示す変換テーブルを作成するという方法がある(例えば、特許文献1参照)。
特開平11−110283号公報(図10等)
Therefore, as a method for making up for the above drawbacks, a conversion table showing the correspondence between logical addresses and physical addresses based on the internal state of the nonvolatile semiconductor memory when the system is required to be started (when power is turned on) or the like. There is a method of creating (see, for example, Patent Document 1).
JP-A-11-110283 (FIG. 10 etc.)

しかしながら、上記特許文献1に記載の方法を実現するためには、少なくとも、データが書き込まれている全てのページに対して読み出しを行わなければならないため、莫大な回数の読み出し処理が発生し、システムの処理速度が低下してしまうことになる。   However, in order to realize the method described in Patent Document 1, at least all pages where data is written must be read, so that a huge number of read processes occur, and the system The processing speed will be reduced.

以上のような事情に鑑み、本発明の目的は、不揮発性半導体メモリからデータを読み出す際の処理速度を向上させることが可能なデータ記憶装置及びデータ管理方法を提供することにある。   In view of the circumstances as described above, an object of the present invention is to provide a data storage device and a data management method capable of improving the processing speed when reading data from a nonvolatile semiconductor memory.

上述の課題を解決するため、本発明の主たる観点に係るデータ記憶装置は、ホスト機器に着脱自在なデータ記憶装置であって、前記データの消去単位である複数のブロックに分割され、かつ、前記各ブロックが、前記データの読み出し及び書き込み単位であってそれぞれ冗長領域を有する複数のページに分割された不揮発性の半導体メモリと、前記各ブロックのうち第1のブロックの各ページのうち第1のデータが最後に書き込まれた第1のページの前記冗長領域に、当該第1のデータの書き込み以前に当該第1のデータとは異なる第2のデータが最後に書き込まれた第2のページの前記半導体メモリ上での位置を示す第1の位置情報を記憶するよう制御する制御手段とを具備する。   In order to solve the above-described problem, a data storage device according to a main aspect of the present invention is a data storage device that is detachable from a host device, and is divided into a plurality of blocks that are erasure units of the data, and Each block is a unit for reading and writing data, and is a nonvolatile semiconductor memory divided into a plurality of pages each having a redundant area, and a first of the pages of the first block of the blocks In the redundant area of the first page where data was last written, the second page of the second page where the second data different from the first data was last written before the first data was written And control means for controlling to store first position information indicating a position on the semiconductor memory.

ここでホスト機器とは例えばPC、AV機器、ゲーム機器、ディジタルスチルカメラ、ディジタルビデオカメラ、携帯電話機等の電子機器であり、不揮発性の半導体メモリとは例えばNAND型のメモリであり、データ記憶装置とは例えばいわゆるメモリカード等である。また第1及び第2のデータは、それぞれ複数のページに書き込まれる場合もあり、上記第1及び第2のページはそれらの第1及び第2のデータがそれぞれ最後に書き込まれたページである。また上記第2のページとは、単一のページのみを指す概念ではなく、複数の異なるページであってもよい。この場合上記第2のデータはその各ページに書き込まれた複数の異なるデータである。第1の位置情報は、第2のページの位置が一意に識別できる情報であれば、物理ページ番号(物理アドレス)でも、論理ページ番号(論理アドレス)でもよいし、第1のページからの相対位置を示す情報でも構わない。   Here, the host device is an electronic device such as a PC, an AV device, a game device, a digital still camera, a digital video camera, or a mobile phone, and the non-volatile semiconductor memory is, for example, a NAND memory, and a data storage device Is, for example, a so-called memory card. The first and second data may be written on a plurality of pages, respectively, and the first and second pages are pages where the first and second data are written last. The second page is not a concept indicating only a single page but may be a plurality of different pages. In this case, the second data is a plurality of different data written on each page. The first position information may be a physical page number (physical address) or a logical page number (logical address) as long as the position of the second page can be uniquely identified, or relative to the first page. Information indicating the position may be used.

この構成によれば、第1のデータが最後に書き込まれた第1のページの冗長領域に、第2のデータが最後に書き込まれた第2のページの位置情報が記憶されているため、ホスト機器側は、当該第1のページにアクセスして当該位置情報を参照することで、第2のページに対して読み出し処理を行うことなく、第2のデータのページ位置を把握することができる。また、第2のデータが上記第2のページ以外の複数のページにも書き込まれている場合であっても、当該複数のページの読み出しを行うことなく第2のデータのページ位置を把握することができる。したがって、ホスト機器は、当該位置情報を基に、ホスト機器側から見たデータの論理アドレスと、半導体メモリ内部の物理アドレスとの対応関係を示すアドレス対応情報を即座に構築することができるため、データ記憶装置へアクセスする際のホスト機器側の処理速度を格段に向上させることができる。また、上記アドレス対応情報を半導体メモリ上に予め別途用意しておく必要がないため、ホスト機器の処理中にデータ記憶装置への電源供給が遮断されてしまった場合でも、上記位置情報を基に上記アドレス対応情報を容易に構築することができる。   According to this configuration, since the position information of the second page where the second data is last written is stored in the redundant area of the first page where the first data is written last, the host By accessing the first page and referring to the position information, the device side can grasp the page position of the second data without performing a read process on the second page. In addition, even when the second data is written on a plurality of pages other than the second page, the page position of the second data is grasped without reading the plurality of pages. Can do. Therefore, the host device can immediately construct address correspondence information indicating the correspondence between the logical address of the data viewed from the host device side and the physical address inside the semiconductor memory based on the position information. The processing speed on the host device side when accessing the data storage device can be significantly improved. In addition, since it is not necessary to prepare the address correspondence information on the semiconductor memory in advance, even if the power supply to the data storage device is interrupted during the processing of the host device, the address information is based on the position information. The address correspondence information can be easily constructed.

上記データ記憶装置において、前記制御手段は、前記第1のページの直後の第3のページに前記第2のデータが書き込まれる際に、前記第1の位置情報を基に、前記第3のページの前記冗長領域に、前記第1のデータが最後に書き込まれた前記第1のページの前記半導体メモリ上での位置を示す第2の位置情報を記憶するよう制御してもよい。   In the data storage device, when the second data is written to a third page immediately after the first page, the control unit is configured to use the third page based on the first position information. The redundant area may be controlled to store second position information indicating a position on the semiconductor memory of the first page where the first data is last written.

これにより、新たなページにデータが書き込まれる度に当該ページの冗長領域に新たな位置情報を記憶することができるため、ホスト機器は常に最新の位置情報を基にアドレス対応情報を容易に構築することができる。   As a result, each time data is written to a new page, new position information can be stored in the redundant area of the page, so that the host device always easily constructs address correspondence information based on the latest position information. be able to.

上記データ記憶装置において、前記制御手段は、前記第1のデータの書き込み後に前記第2のデータを書き込む場合であって、前記各ブロックのうち第1のブロック内に前記第2のデータを書き込み可能なページが存在しない場合に、前記第2のデータを前記第1のブロックとは異なる第2のブロックの先頭の第4のページへ書き込み、前記第1のデータを前記第4のページの直後の第5のページへ書き込み、当該第5のページの冗長領域に、前記第2のデータが最後に書き込まれた前記第4のページの前記半導体メモリ上での位置を示す第2の位置情報を記憶し、前記第1のブロックを消去するよう制御しても構わない。   In the data storage device, the control means can write the second data in the first block of the blocks when the second data is written after the first data is written. When there is no new page, the second data is written to the fourth page at the head of the second block different from the first block, and the first data is immediately after the fourth page. Write to the fifth page, and store in the redundant area of the fifth page second position information indicating the position on the semiconductor memory of the fourth page where the second data was last written However, the first block may be controlled to be erased.

これにより、書き込み対象のブロックが移動した場合でも、当該新たなブロックにおいて、最終書き込み対象のページの冗長領域に第2の位置情報を記憶させ、上記アドレス対応情報を構築させることができる。   Thus, even when the write target block moves, the second position information can be stored in the redundant area of the final write target page in the new block, and the address correspondence information can be constructed.

本発明の他の観点に係るデータ管理方法は、データの消去単位である複数のブロックに分割され、かつ、前記各ブロックが、前記データの読み出し及び書き込み単位であってそれぞれ冗長領域を有する複数のページに分割された不揮発性の半導体メモリを有し、ホスト機器に着脱自在なデータ記憶装置におけるデータ管理方法であって、前記各ブロックのうち第1のブロックの各ページのうち第1のデータが最後に書き込まれた第1のページの前記冗長領域に、当該第1のデータの書き込み以前に当該第1のデータとは異なる第2のデータが最後に書き込まれた第2のページの前記半導体メモリ上での位置を示す第1の位置情報を記憶し、前記第1のページの前記冗長領域から前記第1の位置情報を読み出し、前記第1及び第2のデータの、前記半導体メモリ上における位置と、前記ホスト機器により割り当てられた論理空間における位置との対応関係を示す対応情報を生成することを特徴とする。   A data management method according to another aspect of the present invention is divided into a plurality of blocks which are data erasing units, and each of the blocks is a data read / write unit and each has a redundant area. A data management method in a data storage device having a nonvolatile semiconductor memory divided into pages and detachable from a host device, wherein the first data in each page of the first block among the blocks The semiconductor memory of the second page in which second data different from the first data is written last in the redundant area of the first page written last before the first data is written. Storing first position information indicating a position on the first position, reading the first position information from the redundant area of the first page, the first and second data, Serial and position on the semiconductor memory, and generates the correspondence information indicating a correspondence relationship between the position in the logical space assigned by the host device.

この構成により、ホスト機器は、上記第1の位置情報から生成した対応情報を基に第2のデータへ即座にアクセスすることが可能となる。   With this configuration, the host device can immediately access the second data based on the correspondence information generated from the first position information.

上記データ管理方法において、前記第1のページの直後の第3のページに前記第2のデータが書き込まれる際に、前記第1の位置情報を基に、前記第3のページの前記冗長領域に、前記第1のデータが最後に書き込まれた前記第1のページの前記半導体メモリ上での位置を示す第2の位置情報を記憶し、前記記憶された第2の位置情報を基に、前記対応情報を更新するようにしてもよい。   In the data management method, when the second data is written to the third page immediately after the first page, the redundancy information of the third page is stored in the redundant area based on the first position information. , Storing second position information indicating a position on the semiconductor memory of the first page in which the first data was last written, and based on the stored second position information, The correspondence information may be updated.

上記データ管理方法において、前記対応情報を当該データ記憶装置または前記ホスト機器の所定の記憶領域へ記憶し、前記記憶された対応情報を基に前記第2のページから前記第2のデータを読み出し、前記読み出しが終了したときに前記記憶領域から前記対応情報を消去するようにしても構わない。   In the data management method, the correspondence information is stored in a predetermined storage area of the data storage device or the host device, and the second data is read from the second page based on the stored correspondence information, The correspondence information may be erased from the storage area when the reading is completed.

これにより、上記記憶領域の容量を最小限に抑えることができる。   As a result, the capacity of the storage area can be minimized.

上記データ管理方法において、前記第1のデータの書き込み後に前記第2のデータを書き込む場合であって、前記各ブロックのうち第1のブロック内に前記第2のデータを書き込み可能なページが存在しない場合に、前記第2のデータを前記第1のブロックとは異なる第2のブロックの先頭の第4のページへ書き込み、前記第1のデータを前記第4のページの直後の第5のページへ書き込み、前記第5のページの冗長領域に、前記第2のデータが最後に書き込まれた前記第4のページの前記半導体メモリ上での位置を示す第2の位置情報を記憶し、前記第1のブロックを消去し、前記第5のページの前記冗長領域から読み出した前記第2の位置情報を基に前記対応情報を更新するようにしてもよい。   In the data management method, when the second data is written after the first data is written, there is no page in which the second data can be written in the first block among the blocks. In this case, the second data is written to the fourth page at the head of the second block different from the first block, and the first data is written to the fifth page immediately after the fourth page. The second position information indicating the position on the semiconductor memory of the fourth page where the second data was last written is stored in the redundant area of the fifth page for writing, and the first page The corresponding information may be updated based on the second position information read from the redundant area of the fifth page.

以上のように、本発明によれば、不揮発性半導体メモリからデータを読み出す際の処理速度を向上させることができる。   As described above, according to the present invention, it is possible to improve the processing speed when reading data from the nonvolatile semiconductor memory.

以下、本発明の実施の形態を図面に基づき説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は本発明の一実施形態に係るデータ記憶装置の構成を示すブロック図である。
同図に示すように、データ記憶装置10は、不揮発性半導体メモリ1、制御部としてのプロセッサ2、内部RAM3、バッファRAM4、及びインターフェース部5を有する。データ記憶装置10は、例えばカード状の形態のいわゆるメモリカードであり、PCやディジタルカメラ等のホスト機器(図示を省略)に対して抜き差し可能なリムーバブルメモリとして用いられる。
FIG. 1 is a block diagram showing a configuration of a data storage device according to an embodiment of the present invention.
As shown in FIG. 1, the data storage device 10 includes a nonvolatile semiconductor memory 1, a processor 2 as a control unit, an internal RAM 3, a buffer RAM 4, and an interface unit 5. The data storage device 10 is a so-called memory card in the form of a card, for example, and is used as a removable memory that can be inserted into and removed from a host device (not shown) such as a PC or a digital camera.

不揮発性半導体メモリ1は、複数のマルチレベルセルにより構成され、例えば各セルが4値(2ビット)を記憶するNANDフラッシュメモリである。   The nonvolatile semiconductor memory 1 is composed of a plurality of multi-level cells, and is, for example, a NAND flash memory in which each cell stores four values (2 bits).

プロセッサ2は、データ記憶装置10の各ブロックを統括的に制御しながら、内部RAM3またはバッファRAM4と不揮発性半導体メモリ1との間でデータ転送を行い、データの読み出し、書き込み及び消去を行う。   The processor 2 performs data transfer between the internal RAM 3 or the buffer RAM 4 and the nonvolatile semiconductor memory 1 while performing overall control of each block of the data storage device 10, and reads, writes, and erases data.

内部RAM3は、プロセッサ2の作業用の記憶領域として用いられ、例えば、ホスト機器から転送されるプロセッサ2に対する動作制御コマンドや、当該コントロールコマンドを実行する際に必要な諸処のパラメータ、データ記憶装置10内の内部状態等を一時的に記憶する。また内部RAM3は、不揮発性半導体メモリ1から読み出されたデータを再度不揮発性半導体メモリ1へ書き込む際に、当該書き込みデータを一旦蓄える。   The internal RAM 3 is used as a working storage area of the processor 2. For example, an operation control command for the processor 2 transferred from the host device, various parameters necessary for executing the control command, and the data storage device 10. The internal state etc. are temporarily stored. The internal RAM 3 temporarily stores the write data when the data read from the nonvolatile semiconductor memory 1 is written to the nonvolatile semiconductor memory 1 again.

バッファRAM4は、いわゆるページバッファとして機能し、インターフェース部5を介してホスト機器側から転送された書き込みデータを一旦蓄えると共に、不揮発性半導体メモリ1から読み出されインターフェース部5を介してホスト機器側に転送されるデータを一旦蓄える。   The buffer RAM 4 functions as a so-called page buffer, temporarily stores write data transferred from the host device side via the interface unit 5, and is read from the nonvolatile semiconductor memory 1 and sent to the host device side via the interface unit 5. The data to be transferred is temporarily stored.

インターフェース部5は、ホスト機器のホストインターフェース部11との間のインターフェースを取るためのものである。インターフェース部5は、例えば、シリアルプロトコルにより3本の信号線を用いてデータ転送を行うシリアルインターフェースと、パラレルプロトコルにより6本の信号線を用いてデータ転送を行うパラレルインターフェースとを有する。   The interface unit 5 is an interface with the host interface unit 11 of the host device. The interface unit 5 includes, for example, a serial interface that performs data transfer using three signal lines using a serial protocol, and a parallel interface that performs data transfer using six signal lines using a parallel protocol.

図2は不揮発性半導体メモリ1における記憶領域の構成を示す図である。
同図に示すように、この記憶領域は、複数のブロック(物理ブロック)21(ブロック0、ブロック1・・・)に分割されている。この各ブロック21はデータの消去単位となる。各ブロック21は、データの書き込み単位または読み出し単位である複数のページ(物理ページ)22(ページ0、ページ1・・・)に分割されている。
FIG. 2 is a diagram showing a configuration of a storage area in the nonvolatile semiconductor memory 1.
As shown in the figure, this storage area is divided into a plurality of blocks (physical blocks) 21 (block 0, block 1...). Each block 21 is a data erasing unit. Each block 21 is divided into a plurality of pages (physical pages) 22 (page 0, page 1,...) That are data write units or read units.

図3は、1つのブロック21の各ページ22の構成を示した図である。
同図に示すように、1つのブロック21は例えば16個のページ22で構成され、各ページ22は、データ(実データ)の書き込み領域である複数(例えば4個)のセクタ23(セクタ0〜セクタ3)と、エラー訂正符号やその他のメタデータの記憶領域である冗長エリア24とを有している。
FIG. 3 is a diagram showing the configuration of each page 22 of one block 21.
As shown in the figure, one block 21 is composed of, for example, 16 pages 22, and each page 22 is composed of a plurality of (for example, four) sectors 23 (sectors 0 to 4) that are data (actual data) write areas. It has a sector 3) and a redundant area 24 which is a storage area for error correction codes and other metadata.

図4は、本実施形態における冗長エリア24に記憶された情報の一例を示した図である。
本実施形態においては、各ブロック21には、予め複数の種類のデータを識別するためのデータID(例えばA〜F)が割り当てられており、各ブロック21の各ページ22には、その割り当てられた何れかのデータIDを有するデータしか書き込めないようになっている。より具体的には、データIDは、ホスト機器により割り当てられた論理空間上での各データの論理ブロックアドレス(LBA:Logical Block Address)に対応付けられている。例えば、データID:A〜Fは、LBA:0〜5に対応している。
FIG. 4 is a diagram showing an example of information stored in the redundant area 24 in the present embodiment.
In the present embodiment, each block 21 is assigned in advance a data ID (for example, A to F) for identifying a plurality of types of data, and each page 22 of each block 21 is assigned the data ID. Only data having any data ID can be written. More specifically, the data ID is associated with a logical block address (LBA: Logical Block Address) of each data in the logical space assigned by the host device. For example, data IDs: A to F correspond to LBAs 0 to 5.

同図に示すように、各ページ22の冗長エリア24には、そのページ22に書き込まれているデータのデータIDと、その他の各データIDに対応する最新データ(最後に書き込まれたデータ)が書き込まれたページ22の位置(ページ番号)を示す情報が記憶されている。例えば、同図の例においては、ページ10に書き込まれているデータはデータID:Fを有するデータであり、その他のデータID:A〜Eを有するデータの各最新データは、それぞれページ5、ページ8、ページ9、ページ3、ページ0に書き込まれていることを示している。   As shown in the figure, in the redundant area 24 of each page 22, the data ID of the data written in the page 22 and the latest data (last written data) corresponding to each other data ID are stored. Information indicating the position (page number) of the written page 22 is stored. For example, in the example shown in the figure, the data written in page 10 is data having data ID: F, and the latest data of data having other data IDs: A to E are page 5 and page 5, respectively. 8, page 9, page 3, and page 0.

各ブロック21には、同一のデータIDを有するデータが複数のページ22に書き込まれる場合もあるが、冗長エリア24には、あくまでそれら複数の同一データのうち、最後に書き込まれたデータが書き込まれたページ位置を示す情報が記憶される。すなわち、冗長エリア24には、同一データが書き込まれた複数のページのうち、最大のページ番号が記憶される。同図の例では、同図のページ1、2、5〜7に示された「x」は、それらのページに書き込まれたデータと同一のデータが後のページにも書き込まれていることを示している。   In each block 21, data having the same data ID may be written on a plurality of pages 22, but the last written data among the plurality of the same data is only written in the redundant area 24. Information indicating the page position is stored. That is, the redundant area 24 stores the maximum page number among a plurality of pages in which the same data is written. In the example of the figure, “x” shown in pages 1, 2, 5 to 7 in the figure indicates that the same data as the data written in those pages is written in the subsequent pages. Show.

各データIDは、そのページ22に書き込まれているデータを一意に識別できるものであれば、アルファベットのほか、数値であっても、文字列であっても構わない。またその他のデータIDに対応する最新データのページ位置を示す情報は、当該ページ位置が一意に識別できるものであれば、物理ページ番号のほか、論理ページ番号であってもよいし、そのページからの相対位置を示す情報であっても構わない。   Each data ID may be a numerical value or a character string in addition to the alphabet as long as the data written on the page 22 can be uniquely identified. The information indicating the page position of the latest data corresponding to the other data ID may be a logical page number in addition to a physical page number as long as the page position can be uniquely identified. It may be information indicating the relative position.

図5は、本実施形態における冗長エリア24に記憶された情報の他の例を示した図である。
同図に示すように、必ずしも各ブロック21に割り当てられたデータIDの全てに対応するデータが存在しない場合もある。同図の例では、このブロック21にはデータID:Aに対応するデータがどのページ22にも存在しないため、ページ10の冗長エリア24には、そのことを示す情報(「nonexistence」)が記憶される。もちろん、何れかのIDに対応するデータが存在しないことを示す情報は、文字列であっても、数字であっても構わない。
FIG. 5 is a diagram showing another example of information stored in the redundant area 24 in the present embodiment.
As shown in the figure, there is a case where data corresponding to all the data IDs assigned to each block 21 does not necessarily exist. In the example shown in the figure, since data corresponding to the data ID: A does not exist in any block 22 in this block 21, information (“nonexistence”) indicating this is stored in the redundant area 24 of the page 10. Is done. Of course, the information indicating that there is no data corresponding to any ID may be a character string or a number.

次に、上記のように構成されたデータ記憶装置10及びホスト機器の動作について説明する。   Next, operations of the data storage device 10 and the host device configured as described above will be described.

ホスト機器が各ブロック21にアクセス(読み出し/書き込み)する際には、各ブロック21内部の最終使用(書き込み)済みページの冗長エリア24の情報を読み出し、各ブロックに割り当てられている全てのデータIDに対応するデータがどのページ22に存在しているかを示す対応情報を生成する。本実施形態においては、この対応情報をID/ページマップと称する。なお、最終使用済みページを検索する手法としては、例えば、各ページ22の冗長エリア24に書き込みが発生しているか否かを条件として、各ブロック21の最後のページ(最大のページ番号を有するページ)から前のページへ順に読み出しを行っていく手法(線形検索)や、2分検索、木検索等の周知の手法が用いられる。   When the host device accesses (reads / writes) each block 21, the information in the redundant area 24 of the last used (written) page inside each block 21 is read, and all data IDs assigned to each block are read. Correspondence information indicating in which page 22 the data corresponding to is present is generated. In the present embodiment, this correspondence information is referred to as an ID / page map. As a method for searching for the last used page, for example, on the condition whether or not writing has occurred in the redundant area 24 of each page 22, the last page of each block 21 (the page having the largest page number). ) To the previous page in order (linear search), well-known methods such as binary search and tree search are used.

図6は、当該ID/ページマップの例を示した図である。
同図(a)は、各ブロック21に割り当てられたデータIDの全てに対応するデータが存在している場合のID/ページマップ61を示している。この例では、上記図4に示したページ10の冗長エリア24を基に生成されたID/ページマップ61が示されている。
FIG. 6 is a diagram showing an example of the ID / page map.
FIG. 5A shows an ID / page map 61 when data corresponding to all the data IDs assigned to each block 21 exists. In this example, an ID / page map 61 generated based on the redundant area 24 of the page 10 shown in FIG. 4 is shown.

同図(b)は、各ブロック21に割り当てられたデータIDのうちいずれかのIDに対応するデータが存在しない場合のID/ページマップ61を示している。この例では、上記図5に示したページ10の冗長エリア24を基に生成されたID/ページマップ61が示されている。   FIG. 5B shows an ID / page map 61 when there is no data corresponding to one of the data IDs assigned to each block 21. In this example, an ID / page map 61 generated based on the redundant area 24 of the page 10 shown in FIG. 5 is shown.

このID/ページマップ61は、ホスト機器の揮発性メモリ(図示せず)上や、データ記憶装置10の内部RAM3に保持され、例えばホスト機器からのアクセスが完了する毎に消去される。また、ID/ページマップ61は、ホスト機器がID/ページマップ61が生成されたブロック21へアクセスする可能性がある間は保持され続けるようにしても構わない。   The ID / page map 61 is held on a volatile memory (not shown) of the host device or in the internal RAM 3 of the data storage device 10 and is deleted, for example, every time access from the host device is completed. Further, the ID / page map 61 may be held while the host device may access the block 21 in which the ID / page map 61 is generated.

次に、不揮発性半導体メモリ1にアクセス(書き込み/読み出し)がある場合のホスト機器及びデータ記憶装置10の動作についてより詳細に説明する。   Next, operations of the host device and the data storage device 10 when there is access (write / read) to the nonvolatile semiconductor memory 1 will be described in more detail.

図7は、不揮発性半導体メモリ1にデータを書き込む際の動作を示したフローチャートである。   FIG. 7 is a flowchart showing an operation when data is written to the nonvolatile semiconductor memory 1.

同図に示すように、ホスト機器は、各ブロック21に書き込みを行うに際し、まず、そのブロック21について既に生成済みのID/ページマップ61が存在するか否かを判断する(ステップ71)。ID/ページマップがまだ生成されていない場合には(No)、書き込みを行うページの直前のページの冗長エリア24を読み出し、当該冗長エリア24に記憶された情報を基にID/ページマップ61を生成する(ステップ72)。   As shown in the figure, when writing to each block 21, the host device first determines whether or not an ID / page map 61 already generated for the block 21 exists (step 71). When the ID / page map has not been generated yet (No), the redundant area 24 of the page immediately before the page to be written is read, and the ID / page map 61 is read based on the information stored in the redundant area 24. Generate (step 72).

次に、ホスト機器は、生成されたID/ページマップ61を、書き込み対象のページに応じて更新する(ステップ73)。このとき、データ記憶装置10は、この更新済みのID/ページマップ61に応じて、書き込み対象のページの冗長エリア24にデータIDとページ位置についての情報を生成する(ステップ74)。   Next, the host device updates the generated ID / page map 61 according to the page to be written (step 73). At this time, the data storage device 10 generates information about the data ID and the page position in the redundant area 24 of the page to be written in accordance with the updated ID / page map 61 (step 74).

そして、データ記憶装置10は、ホスト機器から指定されたデータと、上記生成した冗長エリア24の情報を、不揮発性半導体メモリ1の書き込み対象のページへ書き込む(ステップ75)。   Then, the data storage device 10 writes the data designated by the host device and the generated information on the redundant area 24 to the page to be written in the nonvolatile semiconductor memory 1 (step 75).

図8は、データの書き込みに際して各ページの冗長エリア24の情報が順次記憶されていく様子を示した図である。
同図(a)に示すように、ブロックNのページ5の冗長エリア24には、データID:Fのデータが書き込まれており、またデータID:A〜Eに対応するデータは、それぞれページ1、ページ2、ページ3、ページ0及びページ4に書き込まれていることを示す情報が記憶されている。この状態から、次のページ6にデータID:Aのデータを書き込む場合には、上記ページ5の冗長エリア24の情報を基に生成されたID/ページマップ61がその書き込みに対応して更新される。
FIG. 8 is a diagram showing a state in which information in the redundant area 24 of each page is sequentially stored when data is written.
As shown in FIG. 9A, data ID: F is written in the redundant area 24 of page 5 of block N, and the data corresponding to data IDs: A to E are respectively page 1. , Page 2, page 3, page 0 and page 4 are stored. From this state, when data of data ID: A is written to the next page 6, the ID / page map 61 generated based on the information of the redundant area 24 of the page 5 is updated corresponding to the writing. The

そして、同図(b)に示すように、当該更新されたID/ページマップ61を基に、ページ6の冗長エリア24には、当該ページ6にはデータID:Aのデータが書き込まれ、またデータID:B〜Fに対応するデータは、それぞれページ2、ページ3、ページ0、ページ4及びページ5に書き込まれていることを示す情報が記憶される。   Then, as shown in FIG. 6B, based on the updated ID / page map 61, data of data ID: A is written in the page 6 in the redundant area 24 of the page 6, and Information indicating that data corresponding to the data IDs B to F is written in page 2, page 3, page 0, page 4, and page 5 is stored.

この状態から、次のページ7にデータID:Bのデータを書き込む場合にも、同様に上記ページ6の冗長エリア24の情報を基に生成されたID/ページマップ61がその書き込みに対応して更新される。   In this state, when data of data ID: B is written to the next page 7, the ID / page map 61 generated based on the information of the redundant area 24 of the page 6 similarly corresponds to the writing. Updated.

そして、同図(c)に示すように、当該更新されたID/ページマップ61を基に、ページ7の冗長エリア24には、当該ページ7にはデータID:Bのデータが書き込まれ、またデータID:A、C〜Fに対応するデータは、それぞれページ6、ページ3、ページ0、ページ4及びページ5に書き込まれていることを示す情報が記憶される。   Then, as shown in FIG. 6C, based on the updated ID / page map 61, data of data ID: B is written in the page 7 in the redundant area 24 of the page 7, and Information indicating that data corresponding to the data IDs A, C to F is written in page 6, page 3, page 0, page 4, and page 5 is stored.

以上の動作により、各ページ22にデータの書き込みを行う度に、書き込み対象のページ22の冗長エリア24の情報が更新されていくため、ホスト機器は、最終使用済みページの冗長エリア24を読み出すことで、そのブロック21内のID/ページマップ61を即座に構築し、論理アドレスと物理アドレスとの対応関係を容易に把握することができる。   With the above operation, each time data is written to each page 22, the information in the redundant area 24 of the page 22 to be written is updated, so the host device reads the redundant area 24 of the last used page. Thus, the ID / page map 61 in the block 21 can be immediately constructed, and the correspondence between the logical address and the physical address can be easily grasped.

なお、ブロック21内に書き込みを行えるページ22が存在しない場合(全てのページ22に書き込みが行われている場合)には、書き込もうとしているデータを新たな別のブロック21へ書き込み、その後、書き込み対象以外の各データIDを有するデータを古いブロックから当該別のブロック21へコピーし、コピー終了後、古いブロック21のデータを消去する。図9は、この場合に各ページの新たなブロック21の冗長エリア24の情報が更新される様子を示した図である。   If there is no page 22 that can be written in the block 21 (when all pages 22 are written), the data to be written is written to another new block 21 and then written. Data having each data ID other than the target is copied from the old block to the other block 21, and after the copy is completed, the data in the old block 21 is erased. FIG. 9 is a diagram showing how the information in the redundant area 24 of the new block 21 on each page is updated in this case.

同図に示すように、データID:Dのデータの書き込み指令が発生し、ブロックNに書き込み可能なページがない場合には、データ記憶装置10は、まず、当該データID:Dのデータを新たなブロックMの先頭のページ0に書き込む。このとき、このページ0への書き込みに対応したID/ページマップ61が生成される。それとともに、同図(a)に示すように、ブロックMのページ0の冗長エリア24には、このページに書き込まれたデータがデータID:Dのデータであり、その他のデータID:A〜C、E及びFに対応するデータはいずれも当該ブロックMには存在しないことを示す情報が記憶される。   As shown in the figure, when a data write command for data ID: D is generated and there is no writable page in block N, the data storage device 10 first adds the data of the data ID: D. Write to the first page 0 of the correct block M. At this time, an ID / page map 61 corresponding to the writing to page 0 is generated. At the same time, as shown in FIG. 5A, in the redundant area 24 of page 0 of block M, the data written in this page is data ID: D, and other data IDs: A to C , E and F store information indicating that none of the data exists in the block M.

続いて、ブロックMのページ1にデータID:Aのデータがコピーされる場合には、当該ページ1への書き込みに対応して上記生成されたID/ページマップ61が生成される。それとともに、同図(b)に示すように、ブロックMのページ1の冗長エリア24には、このページに書き込まれたデータはデータID:Aのデータであり、データID:Dのデータはページ0に書き込まれ、その他のデータID:B、C、E及びFに対応するデータはいずれも当該ブロックMには存在しないことを示す情報が記憶される。   Subsequently, when the data of the data ID: A is copied to the page 1 of the block M, the generated ID / page map 61 is generated corresponding to the writing to the page 1. At the same time, as shown in FIG. 4B, in the redundant area 24 of page 1 of block M, the data written on this page is data of data ID: A, and the data of data ID: D is page Information indicating that none of the data written in 0 and corresponding to the other data IDs B, C, E, and F exists in the block M is stored.

続いて、ブロックMのページ2にデータID:Bのデータがコピーされる場合にも同様に、当該ページ2への書き込みに対応して上記生成されたID/ページマップ61が生成される。それとともに、同図(c)に示すように、ブロックMのページ2の冗長エリア24には、このページに書き込まれたデータはデータID:Bのデータであり、データID:A、Dのデータはそれぞれページ1、0に書き込まれ、その他のデータID:B、C、E及びFに対応するデータはいずれも当該ブロックMには存在しないことを示す情報が記憶される。   Subsequently, when the data of the data ID: B is copied to the page 2 of the block M, the generated ID / page map 61 is generated corresponding to the writing to the page 2 in the same manner. At the same time, as shown in FIG. 5C, in the redundant area 24 of page 2 of block M, the data written on this page is data of data ID: B, and data of data ID: A, D Are written in pages 1 and 0, respectively, and information indicating that none of the data corresponding to the other data IDs B, C, E, and F exists in the block M is stored.

ブロックMのページ3及び4にデータC及びEがそれぞれコピーされる場合にも、当該コピーに応じてID/ページマップ61が更新されるとともに各ページの冗長エリア24の情報も更新されていく(図示せず)。   Even when the data C and E are respectively copied to the pages 3 and 4 of the block M, the ID / page map 61 is updated according to the copy and the information of the redundant area 24 of each page is also updated ( Not shown).

そして、ブロックMのページ5にデータID:Fのデータがコピーされる場合にも、当該ページ5への書き込みに対応して上記生成されたID/ページマップ61が生成される。それとともに、同図(d)に示すように、ブロックMのページ5の冗長エリア24には、このページに書き込まれたデータはデータID:Fのデータであり、データID:A〜Eのデータはそれぞれページ1、ページ2、ページ3、ページ0、ページ4に書き込まれていることを示す情報が記憶される。以上の処理が終了すると、ブロックNは消去される。   When the data with the data ID: F is copied to the page 5 of the block M, the generated ID / page map 61 is generated corresponding to the writing to the page 5. At the same time, as shown in FIG. 4D, in the redundant area 24 of page 5 of block M, the data written in this page is data ID: F, and data IDs: A to E Stores information indicating that data has been written to page 1, page 2, page 3, page 0, and page 4, respectively. When the above processing is completed, the block N is erased.

このように、書き込み対象のブロックが変更される場合にも、前のブロックからのコピー処理に応じて各ページ22の冗長エリア24の情報が順次書き込まれていくため、ホスト機器は、各データIDに対応するデータが書き込まれている最新のページ位置を常に把握してID/ページマップ61を即座に構築することができる。なお、新たなブロックへのコピー処理の途中段階のページ(図8の例ではブロックMのページ0〜4)においては、冗長エリア24の情報さえ記憶されていればID/ページマップ61の更新処理は行わなくてもよく、コピー処理が終了した最終ページ(図8の例ではブロックMのページ5)についてのみID/ページマップ61を生成するようにしてもよい。   As described above, even when the block to be written is changed, the information on the redundant area 24 of each page 22 is sequentially written according to the copy processing from the previous block. The ID / page map 61 can be immediately constructed by always grasping the latest page position in which data corresponding to is written. In addition, in the page in the middle of the copy process to the new block (pages 0 to 4 of the block M in the example of FIG. 8), the update process of the ID / page map 61 is performed as long as the information of the redundant area 24 is stored. The ID / page map 61 may be generated only for the last page (the page 5 of the block M in the example of FIG. 8) for which the copy process has been completed.

図10は、不揮発性半導体メモリ1に書き込まれたデータを読み込む際の動作を示したフローチャートである。
同図に示すように、データを読み出す場合には、まず、ホスト機器は、読み出し対象のブロック21についてID/ページマップ61が生成されているか否かを判断し(ステップ101)、ID/ページマップ61生成されていない場合(No)には、ホスト機器は、書き込み対象のブロック21の最終使用済みページを検索し、当該ページの冗長エリア24の情報からID/ページマップ61を生成する(ステップ102)。
FIG. 10 is a flowchart showing an operation when reading data written in the nonvolatile semiconductor memory 1.
As shown in the figure, when reading data, the host device first determines whether or not the ID / page map 61 has been generated for the block 21 to be read (step 101), and the ID / page map. If 61 has not been generated (No), the host device searches for the last used page of the block 21 to be written, and generates the ID / page map 61 from the information in the redundant area 24 of the page (step 102). ).

そして、ホスト機器は、生成されたID/ページマップ61を基に、読み出し対象のデータのページ位置を取得し(ステップ103)、取得したページ位置を基に、読み出し対象のデータを不揮発性半導体メモリ1から読み出す(ステップ104)。   Then, the host device acquires the page position of the data to be read based on the generated ID / page map 61 (step 103), and stores the data to be read based on the acquired page position in the nonvolatile semiconductor memory. 1 is read out (step 104).

このように、ホスト機器は、最終使用済みページの冗長エリア24の情報から即座にID/ページマップ61を生成し、所望のデータへ即座にアクセスすることができる。   As described above, the host device can immediately generate the ID / page map 61 from the information in the redundant area 24 of the last used page, and can immediately access desired data.

本発明は上述の実施形態にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。   The present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the scope of the present invention.

上述の実施形態における各ページ22の冗長エリア24の情報は、そのページ22に書き込まれたデータのデータIDと、他のデータIDに対応するデータが書き込まれた最新ページ位置を示す情報であったが、例えば図11に示すように、各ブロック21に割り当てられた全てのデータIDに対応するデータが書き込まれた各最新ページを記憶する形でも構わない。   The information of the redundant area 24 of each page 22 in the above-described embodiment is information indicating the data ID of the data written on the page 22 and the latest page position where the data corresponding to the other data ID is written. However, for example, as shown in FIG. 11, each latest page in which data corresponding to all data IDs assigned to each block 21 is written may be stored.

上述の実施形態においては、各ブロック21に割り当てられたデータIDは6個(A〜F)であったが、もちろんこの数に限られるものではなく、冗長エリアの容量に応じて適宜変更することが可能である。   In the above-described embodiment, the number of data IDs assigned to each block 21 is six (A to F). However, the number is not limited to this number, and may be changed as appropriate according to the capacity of the redundant area. Is possible.

上述の実施形態においては、各ブロック21毎にID/ページマップ61を生成及び更新していたが、不揮発性半導体メモリ1の全てのブロック21について生成されたID/ページマップ61を統合した1つのID/ページマップ61を生成するようにしても構わない。   In the above-described embodiment, the ID / page map 61 is generated and updated for each block 21, but one ID / page map 61 generated for all the blocks 21 of the nonvolatile semiconductor memory 1 is integrated. The ID / page map 61 may be generated.

本発明の一実施形態に係るデータ記憶装置の構成を示すブロック図である。It is a block diagram which shows the structure of the data storage device which concerns on one Embodiment of this invention. 本発明の一実施形態における不揮発性半導体メモリ1の記憶領域の構成を示す図である。It is a figure which shows the structure of the storage area of the non-volatile semiconductor memory 1 in one Embodiment of this invention. 本発明の一実施形態における1つのブロック21の各ページ22の構成を示した図である。It is the figure which showed the structure of each page 22 of one block 21 in one Embodiment of this invention. 本発明の一実施形態における冗長エリア24に記憶された情報の一例を示した図である。It is the figure which showed an example of the information memorize | stored in the redundant area 24 in one Embodiment of this invention. 本発明の一実施形態における冗長エリア24に記憶された情報の他の例を示した図である。It is the figure which showed the other example of the information memorize | stored in the redundant area 24 in one Embodiment of this invention. 本発明の一実施形態におけるID/ページマップの例を示した図である。It is the figure which showed the example of ID / page map in one Embodiment of this invention. 本発明の一実施形態において、不揮発性半導体メモリ1にデータを書き込む際の動作を示したフローチャートである。4 is a flowchart showing an operation when data is written to the nonvolatile semiconductor memory 1 in one embodiment of the present invention. 本発明の一実施形態において、データの書き込みに際して冗長エリア24の情報が記憶されていく様子を示した図である。FIG. 4 is a diagram showing a state in which information in a redundant area 24 is stored when data is written in an embodiment of the present invention. 本発明の一実施形態において、新たなブロックへのデータの書き込みに際して冗長エリア24の情報が記憶されていく様子を示した図である。FIG. 6 is a diagram showing how redundant area 24 information is stored when data is written to a new block in an embodiment of the present invention. 本発明の一実施形態において不揮発性半導体メモリ1に書き込まれたデータを読み込む際の動作を示したフローチャートである。4 is a flowchart showing an operation when reading data written in the nonvolatile semiconductor memory 1 in one embodiment of the present invention. 本発明の他の実施形態における冗長エリア24に記憶された情報の一例を示した図である。It is the figure which showed an example of the information memorize | stored in the redundant area 24 in other embodiment of this invention.

符号の説明Explanation of symbols

1…不揮発性半導体メモリ
2…プロセッサ
3…内部RAM
4…バッファRAM
5…インターフェース部
10…データ記憶装置
11…インターフェース部
11…ホストインターフェース部
21…ブロック
22…ページ
23…セクタ
24…冗長エリア
61…ID/ページマップ
DESCRIPTION OF SYMBOLS 1 ... Nonvolatile semiconductor memory 2 ... Processor 3 ... Internal RAM
4 ... Buffer RAM
DESCRIPTION OF SYMBOLS 5 ... Interface part 10 ... Data storage device 11 ... Interface part 11 ... Host interface part 21 ... Block 22 ... Page 23 ... Sector 24 ... Redundant area 61 ... ID / page map

Claims (7)

ホスト機器に着脱自在なデータ記憶装置であって、
前記データの消去単位である複数のブロックに分割され、かつ、前記各ブロックが、前記データの読み出し及び書き込み単位であってそれぞれ冗長領域を有する複数のページに分割された不揮発性の半導体メモリと、
前記各ブロックのうち第1のブロックの各ページのうち第1のデータが最後に書き込まれた第1のページの前記冗長領域に、当該第1のデータの書き込み以前に当該第1のデータとは異なる第2のデータが最後に書き込まれた第2のページの前記半導体メモリ上での位置を示す第1の位置情報を記憶するよう制御する制御手段と
を具備することを特徴とするデータ記憶装置。
A data storage device that is detachable from a host device,
A non-volatile semiconductor memory that is divided into a plurality of blocks that are data erasing units, and each block is divided into a plurality of pages that are units for reading and writing the data and each have a redundant area;
Among the blocks, the first data is written in the redundant area of the first page in which the first data is written last in each page of the first block. A data storage device comprising: control means for controlling to store first position information indicating a position on the semiconductor memory of a second page in which different second data is written last. .
請求項1に記載のデータ記憶装置であって、
前記制御手段は、前記第1のページの直後の第3のページに前記第2のデータが書き込まれる際に、前記第1の位置情報を基に、前記第3のページの前記冗長領域に、前記第1のデータが最後に書き込まれた前記第1のページの前記半導体メモリ上での位置を示す第2の位置情報を記憶するよう制御することを特徴とするデータ記憶装置。
The data storage device according to claim 1,
The control means, when the second data is written to the third page immediately after the first page, based on the first position information, in the redundant area of the third page, A data storage device that controls to store second position information indicating a position on the semiconductor memory of the first page in which the first data is written last.
請求項1に記載のデータ記憶装置であって、
前記制御手段は、前記第1のデータの書き込み後に前記第2のデータを書き込む場合であって、前記各ブロックのうち第1のブロック内に前記第2のデータを書き込み可能なページが存在しない場合に、前記第2のデータを前記第1のブロックとは異なる第2のブロックの先頭の第4のページへ書き込み、前記第1のデータを前記第4のページの直後の第5のページへ書き込み、当該第5のページの冗長領域に、前記第2のデータが最後に書き込まれた前記第4のページの前記半導体メモリ上での位置を示す第2の位置情報を記憶し、前記第1のブロックを消去するよう制御することを特徴とするデータ記憶装置。
The data storage device according to claim 1,
The control means is a case where the second data is written after the first data is written, and there is no page in which the second data can be written in the first block among the blocks. In addition, the second data is written to the fourth page at the head of the second block different from the first block, and the first data is written to the fifth page immediately after the fourth page. In the redundant area of the fifth page, second position information indicating the position on the semiconductor memory of the fourth page where the second data was last written is stored, and the first page A data storage device characterized by controlling to erase a block.
データの消去単位である複数のブロックに分割され、かつ、前記各ブロックが、前記データの読み出し及び書き込み単位であってそれぞれ冗長領域を有する複数のページに分割された不揮発性の半導体メモリを有し、ホスト機器に着脱自在なデータ記憶装置におけるデータ管理方法であって、
前記各ブロックのうち第1のブロックの各ページのうち第1のデータが最後に書き込まれた第1のページの前記冗長領域に、当該第1のデータの書き込み以前に当該第1のデータとは異なる第2のデータが最後に書き込まれた第2のページの前記半導体メモリ上での位置を示す第1の位置情報を記憶し、
前記第1のページの前記冗長領域から前記第1の位置情報を読み出し、前記第1及び第2のデータの、前記半導体メモリ上における位置と、前記ホスト機器により割り当てられた論理空間における位置との対応関係を示す対応情報を生成する
ことを特徴とするデータ管理方法。
A nonvolatile semiconductor memory is divided into a plurality of blocks, which are data erasing units, and each block is divided into a plurality of pages, each of which is a unit for reading and writing data and has a redundant area. A data management method in a data storage device detachable from a host device,
Among the blocks, the first data is written in the redundant area of the first page in which the first data is written last in each page of the first block. Storing first position information indicating a position on the semiconductor memory of a second page in which different second data is written last;
The first position information is read from the redundant area of the first page, and the position of the first and second data on the semiconductor memory and the position in the logical space allocated by the host device A data management method characterized by generating correspondence information indicating a correspondence relationship.
請求項4に記載のデータ管理方法であって、
前記第1のページの直後の第3のページに前記第2のデータが書き込まれる際に、前記第1の位置情報を基に、前記第3のページの前記冗長領域に、前記第1のデータが最後に書き込まれた前記第1のページの前記半導体メモリ上での位置を示す第2の位置情報を記憶し、
前記記憶された第2の位置情報を基に、前記対応情報を更新する
ことを特徴とするデータ管理方法。
The data management method according to claim 4,
When the second data is written to the third page immediately after the first page, the first data is stored in the redundant area of the third page based on the first position information. Storing second position information indicating a position on the semiconductor memory of the first page written last,
The correspondence management information is updated based on the stored second position information. A data management method, comprising:
請求項4に記載のデータ管理方法であって、
前記対応情報を当該データ記憶装置または前記ホスト機器の所定の記憶領域へ記憶し、
前記記憶された対応情報を基に前記第2のページから前記第2のデータを読み出し、
前記読み出しが終了したときに前記記憶領域から前記対応情報を消去する
ことを特徴とするデータ管理方法。
A data management method according to claim 4, wherein
Storing the correspondence information in a predetermined storage area of the data storage device or the host device;
Reading the second data from the second page based on the stored correspondence information;
The data management method, wherein the correspondence information is erased from the storage area when the reading is completed.
請求項4に記載のデータ管理方法であって、
前記第1のデータの書き込み後に前記第2のデータを書き込む場合であって、前記各ブロックのうち第1のブロック内に前記第2のデータを書き込み可能なページが存在しない場合に、前記第2のデータを前記第1のブロックとは異なる第2のブロックの先頭の第4のページへ書き込み、
前記第1のデータを前記第4のページの直後の第5のページへ書き込み、
前記第5のページの冗長領域に、前記第2のデータが最後に書き込まれた前記第4のページの前記半導体メモリ上での位置を示す第2の位置情報を記憶し、
前記第1のブロックを消去し、
前記第5のページの前記冗長領域から読み出した前記第2の位置情報を基に前記対応情報を更新する
ことを特徴とするデータ管理方法。
The data management method according to claim 4,
In the case where the second data is written after the first data is written, and there is no page in which the second data can be written in the first block among the blocks, the second data is written. Is written to the fourth page at the beginning of the second block different from the first block,
Writing the first data to a fifth page immediately after the fourth page;
Storing, in the redundant area of the fifth page, second position information indicating a position on the semiconductor memory of the fourth page where the second data was last written;
Erasing the first block;
The data management method, wherein the correspondence information is updated based on the second position information read from the redundant area of the fifth page.
JP2007142734A 2007-05-30 2007-05-30 Data storage device and data management method Pending JP2008299455A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007142734A JP2008299455A (en) 2007-05-30 2007-05-30 Data storage device and data management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007142734A JP2008299455A (en) 2007-05-30 2007-05-30 Data storage device and data management method

Publications (1)

Publication Number Publication Date
JP2008299455A true JP2008299455A (en) 2008-12-11

Family

ID=40172953

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007142734A Pending JP2008299455A (en) 2007-05-30 2007-05-30 Data storage device and data management method

Country Status (1)

Country Link
JP (1) JP2008299455A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009157807A (en) * 2007-12-27 2009-07-16 Tdk Corp Memory controller, flash memory system provided with memory controller, and method for controlling flash memory
US9152547B2 (en) 2009-07-16 2015-10-06 Samsung Electronics Co., Ltd. Apparatus and method for scratch pad memory management
CN108701084A (en) * 2017-01-23 2018-10-23 美光科技公司 The processing of partial write block

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004151939A (en) * 2002-10-30 2004-05-27 Matsushita Electric Ind Co Ltd Storage device
JP2006127242A (en) * 2004-10-29 2006-05-18 Fuji Photo Film Co Ltd Storage device control unit and program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004151939A (en) * 2002-10-30 2004-05-27 Matsushita Electric Ind Co Ltd Storage device
JP2006127242A (en) * 2004-10-29 2006-05-18 Fuji Photo Film Co Ltd Storage device control unit and program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009157807A (en) * 2007-12-27 2009-07-16 Tdk Corp Memory controller, flash memory system provided with memory controller, and method for controlling flash memory
US9152547B2 (en) 2009-07-16 2015-10-06 Samsung Electronics Co., Ltd. Apparatus and method for scratch pad memory management
CN108701084A (en) * 2017-01-23 2018-10-23 美光科技公司 The processing of partial write block

Similar Documents

Publication Publication Date Title
US9842030B2 (en) Data storage device and flash memory control method
US8386698B2 (en) Data accessing method for flash memory and storage system and controller using the same
US9037782B2 (en) Method of programming memory cells and reading data, memory controller and memory storage apparatus using the same
US8312554B2 (en) Method of hiding file at data protecting mode for non-volatile memory module, memory controller and portable memory storage apparatus
US8055873B2 (en) Data writing method for flash memory, and controller and system using the same
JPWO2007000862A1 (en) MEMORY CONTROLLER, NONVOLATILE MEMORY DEVICE, NONVOLATILE MEMORY SYSTEM, AND DATA WRITE METHOD
KR100847506B1 (en) Storage device, memory management method and program
JP2009199625A (en) Memory card, and method for controlling memory card and method for controlling nonvolatile semiconductor memory
JP2004127185A (en) Memory card
WO1999030239A1 (en) Memory and access method
JP2012234495A (en) Flash memory device, memory control device, memory control method and storage system
JPWO2009096180A1 (en) MEMORY CONTROLLER, NONVOLATILE STORAGE DEVICE, AND NONVOLATILE STORAGE SYSTEM
JP2006040264A (en) Control method of memory card, and control method of nonvolatile semiconductor memory
JP2008009527A (en) Memory system
US20100318726A1 (en) Memory system and memory system managing method
JP5874525B2 (en) Control device, storage device, and storage control method
JP2008299455A (en) Data storage device and data management method
JP2009259145A (en) Memory controller, flash memory system provided with memory controller, and method for controlling flash memory
US9798470B2 (en) Memory system for storing and processing translation information
JP2012068765A (en) Memory controller, flash memory system with memory controller, and control method of flash memory
JP5949122B2 (en) Control device, storage device, and storage control method
JP5395163B2 (en) Memory management device and memory area setting method
JP2012068764A (en) Memory controller, nonvolatile memory system with memory controller, and control method of nonvolatile memory
JP4308780B2 (en) Semiconductor memory device, memory controller, and data recording method
JP4888333B2 (en) Flash disk device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100520

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120710

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20121106