JP5486047B2 - Device and method for prioritized erase of flash memory - Google Patents
Device and method for prioritized erase of flash memory Download PDFInfo
- Publication number
- JP5486047B2 JP5486047B2 JP2012141348A JP2012141348A JP5486047B2 JP 5486047 B2 JP5486047 B2 JP 5486047B2 JP 2012141348 A JP2012141348 A JP 2012141348A JP 2012141348 A JP2012141348 A JP 2012141348A JP 5486047 B2 JP5486047 B2 JP 5486047B2
- Authority
- JP
- Japan
- Prior art keywords
- erase
- data
- block
- priority
- blocks
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0623—Securing storage systems in relation to content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/79—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7205—Cleaning, compaction, garbage collection, erase control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2143—Clearing memory, e.g. to prevent the data from being stolen
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Storage Device Security (AREA)
Description
本発明は、クリティカリティの低いデータが消去される前に、クリティカリティの高いデータが消去されるよう、記憶デバイス内におけるデータの記憶および消去を管理するためのデバイスに関する。 The present invention relates to a device for managing the storage and erasure of data in a storage device such that high critical data is erased before low critical data is erased.
コンピュータ工学技術では、記憶デバイス内のデータを消去する必要があることは周知であり、一般的に、
(1)新しいデータのためにスペースをクリアする必要性、そして
(2)セキュア領域を持つ記憶デバイスに対して秘密情報を破壊する必要性の、
二つの代替的な必要性が動機となっている。
In computer engineering, it is well known that data in a storage device needs to be erased,
(1) the need to clear space for new data, and
(2) The need to destroy confidential information for storage devices with secure areas
Two alternative needs are motivated.
第一の理由は緊急性が伴わないが、第二の理由は、重要な局面では不可欠である。データを消去するという決定と、記憶デバイスに対する制御の喪失との間の「タイム・ウインドウ」は、非常に短い可能性がある。しばしば、記憶デバイスを消去するために利用可能な時間は、記憶デバイス全体の完全な消去に必要な時間よりも短い。残念なことに、従来の技術には、クリティカリティの低いデータが消去される前にクリティカリティの高いデータが消去されるように消去プロシージャを組織化する方法が開示されていない。 The first reason is not urgent, but the second reason is essential in an important aspect. The “time window” between the decision to erase data and the loss of control over the storage device can be very short. Often, the time available to erase the storage device is less than the time required to completely erase the entire storage device. Unfortunately, the prior art does not disclose how to organize the erase procedure such that high critical data is erased before low critical data is erased.
そのため、クリティカル消去が必要なときに最もクリティカルなデータが第一に消去されることを確実にするためのデバイスを得ることが望ましい。そのような優先順位付き消去プロシージャは、時間が重要な局面で、最適な解決策を提供する。 It is therefore desirable to have a device that ensures that the most critical data is erased first when critical erasure is required. Such prioritized erasure procedures provide an optimal solution in time critical aspects.
本発明の目的は、クリティカリティの低いデータが消去される前に、クリティカリティの高いデータが消去されるよう、記憶デバイス内におけるデータの記憶および消去を管理するためのデバイスを提供することである。 It is an object of the present invention to provide a device for managing the storage and erasure of data in a storage device such that high critical data is erased before low critical data is erased. .
明確にする目的で、以下のいくつかの用語を、本文で用いるために特に定義する。本文で用いる用語「消去プロシージャ」は、(1)ブロックのすべてのセルを同じ論理値にセットすること、または(2)ブロックのすべてのセルのコンテンツをランダム化することによって、ブロックのコンテンツを使用不可能な状態にする電子プロセスに言及する。本文で用いる用語「優先順位付き消去」は、消去優先度プロトコルに従ってメモリの一部を消去する消去プロシージャに言及する。本文で用いる用語「ブロック」は、フラッシュメモリ記憶デバイスの物理部分に言及する。本文で用いる用語「サニタイズ消去」は、科学捜査の手段によってコンテンツを復元不可能なようにデジタル・メモリのコンテンツが破壊される消去プロシージャに言及する。そのようなサニタイズ消去は、通常の読み取りコマンドに対するコンテンツの使用を不可にする通常の消去プロシージャと対照的であるが、先進の技術的手段による回復を阻止できない可能性がある。本文で用いる用語「フラッシュ・ユニット」は、フラッシュメモリ・デバイス内のフラッシュメモリの一部分に言及する。 For purposes of clarity, the following terms are specifically defined for use in the text. The term “erase procedure” as used herein uses the contents of a block by (1) setting all cells in the block to the same logical value, or (2) randomizing the contents of all cells in the block. Mention an electronic process that renders it impossible. As used herein, the term “priority erase” refers to an erase procedure that erases a portion of memory according to an erase priority protocol. As used herein, the term “block” refers to the physical portion of a flash memory storage device. As used herein, the term “sanitize erasure” refers to an erasure procedure in which the contents of digital memory are destroyed such that the contents cannot be recovered by forensic means. Such sanitized erase is in contrast to normal erase procedures that disable the use of content for normal read commands, but may not prevent recovery by advanced technical means. As used herein, the term “flash unit” refers to a portion of flash memory within a flash memory device.
本発明は、シングルレベル・セル(SLC)フラッシュメモリおよびマルチレベル・セル(MLC)フラッシュメモリの両方に適用できる。以降の考察は主にSLCセルに集中するが、本発明がMLCセル(そして一般的に他の不揮発性記憶デバイス)へ適用できることは、同業者には明らかである。本文で用いる用語「消去」および「書き込み」は、メモリ・セルのスレショルド電圧を設定することに言及する。SLCセルに対して、消去は、典型的に、1ロジック値に対応する電圧を設定し、書き込みは、典型的に、0ロジック値に対応する電圧を設定する。本文では、用語「書き込み」および「プログラミング」を置換可能に用いている。本発明は、特に、一度に1ページを読み取る、そしてプログラムするNANDタイプ・フラッシュメモリに適用可能である。 The present invention is applicable to both single-level cell (SLC) flash memory and multi-level cell (MLC) flash memory. Subsequent discussion will concentrate primarily on SLC cells, but it will be apparent to those skilled in the art that the present invention is applicable to MLC cells (and generally other non-volatile storage devices). As used herein, the terms “erase” and “write” refer to setting the threshold voltage of a memory cell. For SLC cells, erasing typically sets a voltage corresponding to one logic value, and writing typically sets a voltage corresponding to zero logic value. In the text, the terms “write” and “programming” are used interchangeably. The present invention is particularly applicable to NAND type flash memories that read and program one page at a time.
表1は、本発明の、三つの代替的な実施例を示す。 Table 1 shows three alternative embodiments of the present invention.
本発明による好適実施例においては、表1、実施例1に示して以下に説明するように、データは、書き込みアロケーションに少しの制約も課すことのない任意の方式でフラッシュメモリ内に記憶される。そのため、重要なデータを含む書き込みブロックのロケーションが記録され、消去は、これらの記録に従って実行される。 In the preferred embodiment according to the present invention, data is stored in flash memory in any manner that does not impose any restrictions on write allocation, as shown in Table 1, Example 1 and described below. . Therefore, the location of the write block containing important data is recorded, and erasure is performed according to these records.
本発明のもう一つの好適実施例においては、表1、実施例2に示して以下に説明するように、データは、高消去優先度データの最速消去を確実にする方式でフラッシュ・ユニット内に記憶される。フラッシュ・ユニットの特定な領域は、高消去優先度ブロックのために確保される。緊急局面で、確保領域は、フラッシュ・ユニットの他のどの部分よりも先に消去される。データを書き込むために利用可能なブロックのロケーションは、各ブロックの消去優先度に従って予め定められる。 In another preferred embodiment of the present invention, data is stored in the flash unit in a manner that ensures fastest erasure of high erase priority data, as shown in Table 1, Example 2 and described below. Remembered. A specific area of the flash unit is reserved for the high erase priority block. In the emergency phase, the reserved area is erased before any other part of the flash unit. The location of the blocks available for writing data is predetermined according to the erase priority of each block.
(表1、実施例3、そして下記に説明する)本発明のもう一つの好適実施例では、データは、実施例1および2の利点を組み合わせる方式でフラッシュ・ユニット内に記憶される。実施例3では、書き込みは、実施例1と同じだけ速く実行され、そして消去は、実施例2と同じだけ速く実行される。実施例3においては、第一のフラッシュ・ユニットの書き込みは、(実施例1と同様に)ランダムな順序で実行され、それから、残りのフラッシュ・ユニット内の高消去優先度領域のロケーションは、第一のフラッシュ・ユニットに従って整列される。実施例3は、第一のフラッシュ・ユニットへの書き込みが実施例1と同じだけ速く、そして緊急消去が実施例2と同じだけ速い。 In another preferred embodiment of the present invention (described in Table 1, Example 3 and described below), data is stored in the flash unit in a manner that combines the advantages of Examples 1 and 2. In Example 3, writing is performed as fast as Example 1, and erasing is performed as fast as Example 2. In Example 3, the writing of the first flash unit is performed in a random order (similar to Example 1), and then the location of the high erase priority area in the remaining flash units is Aligned according to one flash unit. In Example 3, writing to the first flash unit is as fast as Example 1, and emergency erasure is as fast as Example 2.
フラッシュメモリの優先順位付き消去は、少なくとも三つの異なるプロシージャを用いて実行できる。
(1)韓国、水原のサムスン電子から入手可能な、K9F1G08U0Aフラッシュメモリの技術的なデータ・シート内に説明があるような、通常の消去コマンド。
(2)例えば、コレン氏らの米国特許出願第20040188710号に開示されたような、サニタイズ消去。そして
(3)以下に詳細に説明するような、インタラプト消去。
Prioritized erase of flash memory can be performed using at least three different procedures.
(1) Normal erase command as described in the technical data sheet of K9F1G08U0A flash memory available from Samsung Electronics of Suwon, Korea.
(2) Sanitization elimination as disclosed, for example, in US Patent Application No. 20040188710 to Koren et al. And
(3) Interrupt erasure as described in detail below.
本発明で説明する優先順位付き消去プロシージャは、消去プロシージャおよび消去順序の選択を含む。 The prioritized erase procedure described in the present invention includes selection of an erase procedure and an erase order.
したがって、本発明によれば、優先順位付き消去機能を持つ不揮発性記憶デバイスが初めて提供される。このデバイスは、(a)記憶デバイス内にデータを記憶するための記憶メモリ、そして(b)記憶デバイス・コントローラを含む。記憶メモリは、少なくとも一つのフラッシュ・ユニットを持ち、各フラッシュ・ユニットは、複数のブロックを持つ。記憶デバイス・コントローラは、(i)複数のブロック内へデータを書き込むよう、(ii)各ブロックへ消去優先度を指定するよう、そして(iii)緊急消去コマンドを受信すると即座に、各ブロックの消去優先度に従って各ブロック内のデータを消去するよう構成される。なお、各ブロックへ指定される消去優先度は、データの消去優先度と相互に関連する。 Therefore, according to the present invention, a nonvolatile storage device having an erase function with priority order is provided for the first time. The device includes (a) a storage memory for storing data in the storage device, and (b) a storage device controller. The storage memory has at least one flash unit, and each flash unit has a plurality of blocks. The storage device controller (i) writes data into multiple blocks, (ii) assigns an erase priority to each block, and (iii) erases each block as soon as an emergency erase command is received. It is configured to erase data in each block according to priority. Note that the erase priority assigned to each block correlates with the data erase priority.
コントローラは、任意に選択されたブロックに書き込みを実行するよう構成され、そして指定は、データの消去優先度に従って実行されることが好ましい。 The controller is preferably configured to perform a write on an arbitrarily selected block, and the designation is preferably performed according to data erasure priority.
コントローラは、データを書き込む前に消去優先度の指定を実行するよう構成され、そして書き込みは、各ブロックの消去優先度に従って実行されることが好ましい。 The controller is configured to perform an erase priority designation prior to writing data, and the write is preferably performed according to the erase priority of each block.
コントローラは、データの書き込みを、第一のフラッシュ・ユニット内で任意の順序で複数のブロックへ実行するよう構成され、そして以降のフラッシュ・ユニットへの書き込みは、第一のフラッシュ・ユニットにおける順序に相関性を持って実行されることが好ましい。 The controller is configured to perform data writes to the blocks in any order within the first flash unit, and subsequent writes to the flash unit are in order in the first flash unit. It is preferable to execute with correlation.
コントローラは、さらに、(iv)各フラッシュ・ユニット内の共通相対位置を持つブロックへ、共通消去優先度を指定するよう構成されることが最も好ましい。 Most preferably, the controller is further configured to (iv) assign a common erase priority to blocks having a common relative position within each flash unit.
コントローラは、さらに(iv)各ブロックに対する消去優先度のログを記憶するよう、そして(v)緊急消去コマンドを受信すると即座に、ログ内に記憶された消去優先度に従って各ブロック内のデータを消去するよう構成されることが好ましい。 The controller further (iv) stores an erasure priority log for each block, and (v) erases the data in each block according to the erasure priority stored in the log as soon as an emergency erase command is received. It is preferable to be configured to do so.
コントローラによる消去は、複数のブロックの少なくともいくつかに対して、消去を完了する前に消去をアボートすることを含むことが好ましい。 The erasure by the controller preferably includes aborting the erasure for at least some of the plurality of blocks before completing the erasure.
本発明によれば、優先順位付き消去機能を持つハードディスク・ドライブが初めて提供される。このドライブは、(a)ハードディスク・ドライブ内にデータを記憶するための、少なくとも二つのセクターを持つ記憶メモリ、(b)各セクターへ消去優先度を指定するためのメカニズム、そして(c)各セクターの消去優先度に従ってセクターを消去するためのメカニズムを含む。なお、各セクターへ指定される消去優先度は、データの消去優先度と相互に関連する。 According to the present invention, a hard disk drive having an erase function with priority order is provided for the first time. The drive includes: (a) a storage memory having at least two sectors for storing data in the hard disk drive; (b) a mechanism for assigning an erase priority to each sector; and (c) each sector. Includes a mechanism for erasing the sector according to the erasure priority. Note that the erase priority assigned to each sector is correlated with the data erase priority.
これらの実施例および他の実施例を、以下で詳細に説明する。 These and other embodiments are described in detail below.
さて、本発明を、例証としての添付の図面を参照しながら説明する。 The present invention will now be described with reference to the accompanying drawings by way of illustration.
本発明は、クリティカリティの低いデータが消去される前に、クリティカリティの高いデータが消去されるよう、記憶デバイス内におけるデータの記憶および消去を管理するためのデバイスに関する。本発明による記憶デバイス内におけるデータの記憶および消去を管理するための原理および作用は、添付の説明および図面を参照することによって良く理解できる。 The present invention relates to a device for managing the storage and erasure of data in a storage device such that high critical data is erased before low critical data is erased. The principles and operation for managing the storage and erasure of data in a storage device according to the present invention may be better understood with reference to the accompanying description and drawings.
上記の表1の実施例1では、書き込みプロセスは任意であり、ログが種々の消去優先度へのブロックの割り当てを詳細に記録し、そして消去はログに従って実行される。 In Example 1 of Table 1 above, the writing process is arbitrary, the log details the allocation of blocks to various erase priorities, and the erase is performed according to the log.
上記表1の実施例2では、書き込みプロセスは、高消去優先度へのブロックの予備アロケーションに従って実行され、消去はそのアロケーションに従って実行される。 In Example 2 of Table 1 above, the writing process is performed according to the preliminary allocation of blocks to a high erase priority, and the erasure is performed according to that allocation.
上記表1の実施例3では、第一のフラッシュ・ユニットの書き込みは、実施例1の場合のように任意に実行される。そのような任意のアロケーションは、それから、残りのフラッシュ・ユニット内のアロケーションを定める。そして消去は、実施例2の場合のように実行される。 In Example 3 of Table 1 above, the writing of the first flash unit is arbitrarily performed as in Example 1. Such any allocation then defines the allocation within the remaining flash units. The erasure is executed as in the second embodiment.
さて、図面を参照する。図1は、本発明の好適実施例による、物理消去スライスを利用して消去する、優先順位付き消去プロシージャを用いるフラッシュメモリ・システムを表す簡略ブロック図である。ホスト・システム20は、フラッシュコントローラ24および複数のフラッシュ・ユニット26を持つフラッシュメモリ・デバイス22に接続された状態で図示されている。
Reference is now made to the drawings. FIG. 1 is a simplified block diagram illustrating a flash memory system using a prioritized erase procedure that erases utilizing a physical erase slice in accordance with a preferred embodiment of the present invention. The host system 20 is shown connected to a flash memory device 22 having a flash controller 24 and a plurality of
各フラッシュ・ユニット26は、消去のために個々にアドレス指定可能な、多数のブロック28を持つ。フラッシュメモリ・ディスク・ドライブのためのそのような構造は、本技術において周知であり、イスラエルのクファ・サバに在るサンディスクIL社から入手可能なFFD-25-UATA-8192-A等のコンポーネント内に見られる。
Each
フラッシュ・ユニット26のいくつかのブロック28は、高消去優先度データを収容するように選択されている(図1にブロックHとして示す)。ブロックHの位置は、ホスト・システム20の書き込みメカニズムへ通知される。書き込みメカニズムは、典型的にフラッシュ・コントローラ24であるが、ホスト・システム20であることもある。書き込みメカニズムは、それから、高消去優先度のデータをブロックHへ割り当てる。フラッシュ・ユニット26の他のブロック28は、中および低消去優先度データを収容するように選択される(図1に各々、ブロックMおよびLとして示す)。ブロックMおよびLの位置も、ホスト・システム20の書き込みメカニズムへ通知される。書き込みメカニズムは、それから、より低い消去優先度のデータをブロックMおよびLへ割り当てる。ブロック28へのデータの選択的アロケーションに対しては、多くの消去優先度があってもよい。
Some
本発明による好適実施例においては、いくつかのブロック28には、指定ブロックを優先順位付き消去プロシージャから除外する除外消去優先度が指定される(図1にブロックEとして示す)。データは、緊急消去局面の際に消去される必要がないブロックEへ割り当てることができる。フラッシュメモリ・デバイス22内のデータを緊急に消去する必要が発生した場合、消去メカニズムは、それらの指定消去優先度に従ってブロック28を消去し、また、データが正しい順序で消去されることを確実にする。
In the preferred embodiment according to the present invention, some
「物理消去スライス」は、いくつかのフラッシュ・ユニットからの数ブロックの集合であり、各選択ブロックは、各々のフラッシュ・ユニット内の同じアドレスを持つ。各フラッシュ・ユニット内の選択消去優先度ブロックの各々が同じアドレスを共有するよう、書き込み時にブロックが割り当てられた場合、物理消去スライスによって、最適な優先順位付き消去を実行することが可能である。 A “physical erase slice” is a collection of several blocks from several flash units, with each selected block having the same address in each flash unit. If the blocks are assigned at the time of writing such that each of the selective erase priority blocks in each flash unit share the same address, it is possible to perform an optimized prioritized erase with a physical erase slice.
図1に示す物理消去スライス30は、フラッシュ・ユニット26を横切るブロック28の集合を表す。図1にブロックHが物理消去スライス30の一部として示されているが、物理消去スライス30は、ブロック28のどの「スライス」をも含むことができる。本発明による好適実施例においては、物理消去スライス30内のブロック28の消去は、同時に実行される。
The physical erase slice 30 shown in FIG. 1 represents a set of
いくつかのフラッシュメモリ・アーキテクチャにおいては、フラッシュメモリの不均質な構造に起因して、いくつかのブロックの消去は、他のブロックに対する消去よりも高速である。図1に説明する本実施例においては、ブロックを高消去優先度に事前に割り当てられるため、高消去優先度データへのアロケーションには、本質的に高速な消去ブロックを使用することが好ましい。高消去優先度データが高速な消去ブロック内に属する場合、プロトコルが適用できる。そのようなシステムでは、高速な消去ブロックは、より高い消去優先度のデータを収容するように選択される。そうすることによって、高消去優先度データが、より速く消去されることになる。 In some flash memory architectures, erasure of some blocks is faster than erasure for other blocks due to the heterogeneous structure of flash memory. In the present embodiment illustrated in FIG. 1, since blocks are pre-assigned to high erase priority, it is preferable to use essentially fast erase blocks for allocation to high erase priority data. If the high erase priority data belongs to a fast erase block, the protocol can be applied. In such a system, the fast erase block is selected to accommodate higher erase priority data. By doing so, the high erasure priority data will be erased faster.
本実施例においては、高消去優先度ブロックが、フラッシュ・ユニットへランダムに割り当てられることに注意すべきである。消去プロシージャは、一消去サイクル中、各フラッシュ・ユニット内の1ブロックを消去するため、他のフラッシュ・ユニットでは、すべての高消去優先度ブロックが既に消去されたのに、いくつかのフラッシュ・ユニットには、消去すべきブロックが未だに残っているという状況が発生し得る。そのような事態は、効率の損失となる。消去プロシージャは、最後のフラッシュ・ユニット内の最後の高消去優先度ブロックが消去されるまで、各サイクル中、より少数のブロックを消去し続ける。 It should be noted that in this embodiment, high erase priority blocks are randomly assigned to flash units. The erase procedure erases one block in each flash unit during one erase cycle, so that in other flash units, all flash unit priority blocks have already been erased, but some flash units In some cases, there may still be a situation in which there are still blocks to be erased. Such a situation results in a loss of efficiency. The erase procedure continues to erase fewer blocks during each cycle until the last high erase priority block in the last flash unit is erased.
図2は、本発明の好適実施例による、論理消去スライスを利用して消去する、優先順位付き消去プロシージャを用いるフラッシュメモリ・システムを表す簡略ブロック図である。この実施例では、書き込みプロセスは、本発明に関連しない、例えば、米国特許第6,898,662号、Gorobets等のフラッシュメモリ・デバイス構成の従来の技術に開示された工学技術考慮事項によって最適化される。 FIG. 2 is a simplified block diagram illustrating a flash memory system using a prioritized erase procedure that uses a logical erase slice to erase according to a preferred embodiment of the present invention. In this embodiment, the write process is optimized by engineering considerations disclosed in the prior art of flash memory device configurations that are not relevant to the present invention, eg, US Pat. No. 6,898,662, Gorobets et al. Is done.
典型的に、書き込みは、フラッシュ・ユニット26を一つ一つ順に、連続したセットのブロック28に実行されるのではなく、むしろ「全面を横切って」、平行ないくつかのフラッシュ・ユニット26上にデータが書き込まれる。書き込みと同時に、各々の書き込まれたブロック28あるいは少なくともブロックH(すなわち、高消去優先度データが書き込まれるブロック)の消去優先度のログ・テーブル(図示せず)に記録が作成される。本発明の開示の目的で、3レベルの消去優先度があり、そして大部分のブロックが消去優先度を持たない(すなわちブロックE)と仮定する。したがって、ブロックEのデータが非消去のままに残されても全く危険性はない。
Typically, writing is not performed on the
フラッシュメモリ工学技術において既知であるように、マルチユニット・フラッシュメモリ・デバイスの消去は、一つの消去サイクル中にフラッシュ・ユニットの各々の1ブロックが同時に消去されると最も効率的である。しかし、ブロックがそれらの消去優先度に従って予め配置されないなら、物理消去スライスは実行できない。そのようなケースでは、「論理消去スライス」が実行できる。 As is known in flash memory engineering, erasing a multi-unit flash memory device is most efficient when one block of each flash unit is erased simultaneously during one erase cycle. However, a physical erase slice cannot be performed if the blocks are not pre-arranged according to their erase priority. In such a case, a “logical erase slice” can be performed.
「論理消去スライス」は、各々のフラッシュ・ユニット26(例えば、図2のブロックH、MまたはL)からの一つの、任意の代表ブロック28の集合である。この実施例は、単一の消去サイクルが、一回の作動で、各フラッシュ・ユニット26内の異なる位置のブロックを消去できるという事実を利用する。論理消去スライスは、各フラッシュ・ユニット26内の選択ブロック28のアドレスを提供し、それからすべてのフラッシュ・ユニット26に消去コマンドを適用することによって同時に消去でき、各フラッシュ・ユニット26内の選択ブロック28が消去される。そのようなプロシージャは、各フラッシュ・ユニット26内のブロック28を、それらの相対的な消去優先度に従って消去する方法を提供する。
A “logical erase slice” is a collection of any
フラッシュメモリ・デバイス22は、単一の消去サイクルにおいて、一つの物理消去スライスあるいは一つの論理消去スライスを消去することができる。図1においては、データは、物理消去スライスでのブロックの消去に最適なアーキテクチャに組織化される。図2においては、データは任意に組織化される。したがって、論理消去スライスによってブロックを消去するメカニズムが具現されなければならない。 The flash memory device 22 can erase one physical erase slice or one logical erase slice in a single erase cycle. In FIG. 1, the data is organized into an architecture that is optimal for erasing blocks in physical erase slices. In FIG. 2, the data is arbitrarily organized. Therefore, a mechanism for erasing a block by a logical erase slice must be implemented.
フラッシュメモリ・デバイス22を緊急に消去する必要がある場合、フラッシュ・コントローラ24は、ログ・テーブルをチェックして、フラッシュ・ユニット26の各々の最高消去優先度ブロックを検出する。各フラッシュ・ユニット26からの一セットのブロックHが、図2に示すように、論理消去スライス32になる。論理消去スライス32が消去され、そしてログ・テーブルは、これらのブロックが消去されたことを反映するように更新される。注目すべきことは、論理消去スライス32内のすべてのブロックHが消去されるわけではなく、各フラッシュ・ユニット26からの一つのブロックHのみが消去されることである。フラッシュ・コントローラ24は、それから、各フラッシュ・ユニット26内の次に高い消去優先度ブロック(例えばブロックM)を選択する。各フラッシュ・ユニット26からの一セットのブロックMが、消去される論理消去スライス34になり、そしてログ・テーブルが再び更新される。このプロセスは、フラッシュ・ユニット26内に高消去優先度ブロックがなくなるまで続く(例えば、論理消去スライス36および38)。実際には、論理消去スライス32が消去された後も、選択された次の論理消去スライスは、ブロックHのみを含む可能性がある。そのようなプロシージャは、ログ・テーブル内でブロックHがなくなるまで継続し、それから、論理消去スライス34(すなわちブロックM)が消去されることになる。あるいは消去のプロセスが外部的に停止されるまで継続する。
If the flash memory device 22 needs to be erased urgently, the flash controller 24 checks the log table to find the highest erase priority block for each
図3は、本発明の好適実施例による、優先順位付き消去プロシージャを表す簡略フローチャートである。ホスト・システムから緊急消去コマンドを受信すると、フラッシュメモリ・デバイスのコントローラは、優先順位付き消去プロシージャを開始する(ステップ40)。コントローラは、消去すべき消去優先ブロックがあるかどうかをチェックする(ステップ42)。消去すべき消去優先ブロックが全くない場合、優先順位付き消去プロシージャは終了する(ステップ44)。消去すべき消去優先ブロックがある場合、コントローラは、検査すべきフラッシュ・ユニットが残っているかどうかをチェックする(ステップ46)。検査すべきフラッシュ・ユニットが未だ在る場合、コントローラは、次のフラッシュ・ユニット内の最高消去優先度ブロックを検索し(ステップ48)、そして現在の論理消去スライスへそのブロックを付加するよう進行する(ステップ50)。それから、コントローラは、検査すべきフラッシュ・ユニットが残っているかどうかを再びチェックする(ステップ46)。すべてのフラッシュ・ユニットが検査されると、現在の論理消去スライスが消去される(ステップ52)。このとき、論理消去スライス内に含まれるすべてのブロックが、平行に消去される。そして、それに応じて、ログ・テーブルが更新される(ステップ54)。 FIG. 3 is a simplified flowchart representing a prioritized erase procedure according to a preferred embodiment of the present invention. Upon receiving an emergency erase command from the host system, the flash memory device controller initiates a prioritized erase procedure (step 40). The controller checks whether there is an erase priority block to be erased (step 42). If there are no erase priority blocks to be erased, the prioritized erase procedure ends (step 44). If there is an erase priority block to be erased, the controller checks whether there are any flash units remaining to be examined (step 46). If there are more flash units to examine, the controller searches for the highest erase priority block in the next flash unit (step 48) and proceeds to add the block to the current logical erase slice. (Step 50). The controller then checks again whether there are any remaining flash units to be tested (step 46). When all flash units have been examined, the current logical erase slice is erased (step 52). At this time, all the blocks included in the logical erase slice are erased in parallel. Accordingly, the log table is updated accordingly (step 54).
本発明による好適実施例においては、「フル消去」サイクルの代わりに、「インタラプト消去」サイクルを用いる。フル消去サイクルは、比較的に長時間、典型的に2.5ミリ秒を費やす消去プロシージャであり、メモリ・ブロックのすべてのビットが1ロジックへセットされるという点で消去が「クリーン」であることを確実にする。消去プロシージャが短くなると、いくつかのビットが1ロジックへセットされないという危険性がある。数千ブロックを持つフラッシュメモリが消去され、そして各ブロックがフル消去サイクルで消去される場合、全消去時間は、何十秒にもなる可能性がある。緊急事態において、消去プロシージャが、すべてのブロックが消去される前に短く中断される危険性がある。 In the preferred embodiment of the present invention, instead of a “full erase” cycle, an “interrupt erase” cycle is used. A full erase cycle is an erase procedure that spends a relatively long time, typically 2.5 milliseconds, and the erase is “clean” in that all bits of the memory block are set to one logic. Make sure. If the erase procedure is shortened, there is a risk that some bits will not be set to one logic. If a flash memory with thousands of blocks is erased and each block is erased in a full erase cycle, the total erase time can be tens of seconds. In an emergency situation, there is a risk that the erase procedure will be interrupted briefly before all the blocks are erased.
緊急消去時間は、2.5msサイクルの一部分を一つのブロックを消去するために割り当てることで、より効果的に利用でき、2.5ms内でより多くのブロックを消去可能である。典型的に、フル消去サイクルの50%未満が実行された後、大部分のビットは、それらの本来の論理状態を失う。完全には消去されていないビットの残りの総数は、情報を実質的に利用不可能にする程度に少ないものである。したがって、フル消去サイクル時間を用いて50%のブロックを消去するのではなく、フル消去サイクル時間の50%を用いて二倍の数のブロックを消去することが好ましい。インタラプト消去サイクルの所要時間の決定は、工学技術的考慮事項、そして優先順位付き消去プロシージャに利用可能な総時間に関する推定に基づいて、公称フル消去サイクルの0%から100%のいずれにも設定可能であることは明らかである。 The emergency erase time can be used more effectively by allocating a portion of the 2.5 ms cycle to erase one block, and more blocks can be erased within 2.5 ms. Typically, after less than 50% of the full erase cycle is performed, most bits lose their original logic state. The remaining total number of bits that have not been completely erased is small enough to make the information substantially unavailable. Therefore, it is preferable to erase twice the number of blocks using 50% of the full erase cycle time rather than erasing 50% of the blocks using the full erase cycle time. Determination of interrupt erase cycle duration can be set between 0% and 100% of the nominal full erase cycle based on engineering considerations and an estimate of the total time available for the prioritized erase procedure Obviously.
インタラプト消去サイクルを実行するための一つの可能な方法は、(両NORおよびNANDタイプ・フラッシュメモリのための)フラッシュメモリが、消去サイクル中、多くのコマンドに対して「ブラインド」でありながら、例えば次のような、特別な「アボート」コマンドに反応するという事実を利用することである。
(1)「http://www.samsung.com/Products/Semiconductor/MCP/NORbased/K5L5628JBM/K5L5628JBM.htm」に説明があるような、NORタイプ・フラッシュメモリにおける「リセット」コマンド。
(2)「http://www.electronicstalk.com/news/sor/sor100.html」に説明があるような、NORタイプ・フラッシュメモリにおける「サスペンド消去」コマンド。そして
(3)例えば、「http://www.samsung.com/Products/Semiconductor/NANDFlash/SLC_LargeBlock/1Gbit/K9F1G08U0A/ds_k9flg08x0a_rev10.pdf」の、サムスンK9F1G08U0Aのデータ・シートに説明があるような、NANDタイプ・フラッシュメモリにおける「リセット」コマンド。
One possible way to perform an interrupt erase cycle is that flash memory (for both NOR and NAND type flash memory) is “blind” for many commands during the erase cycle, for example To take advantage of the fact that it reacts to a special "abort" command:
(1) “Reset” command in NOR type flash memory as described in “http://www.samsung.com/Products/Semiconductor/MCP/NORbased/K5L5628JBM/K5L5628JBM.htm”.
(2) “Suspend erase” command in NOR type flash memory as described in “http://www.electronicstalk.com/news/sor/sor100.html”. And
(3) For example, a NAND type as described in the Samsung K9F1G08U0A data sheet of “http://www.samsung.com/Products/Semiconductor/NANDFlash/SLC_LargeBlock/1Gbit/K9F1G08U0A/ds_k9flg08x0a_rev10.pdf” “Reset” command in flash memory.
サムスンK9F1G08U0Aのデータ・シートには、「デバイスは、コマンド・レジスタへのFFhの書き込みによって実行されるリセット機能を提供する。デバイスが、ランダム・リード、プログラムまたは消去モード中、ビジー状態にあるとき、リセット動作は、これらの作動をアボートすることになる。」との記載がある。 The Samsung K9F1G08U0A data sheet states, “The device provides a reset function that is performed by writing FFh to the command register. When the device is busy during random read, program or erase mode, The reset operation aborts these operations. "
これらのコマンドは、フル消去サイクルよりも非常に短い。(NANDタイプ・フラッシュメモリにおいては、フル消去サイクルが2.5msを要するが、リセット・コマンドは、最大で0.5msを要する。)フル消去サイクルがアボートされると、メモリは、いかなる目的にも有益でないランダムな状態のままとなる。二つの完全なフル消去サイクルを実行するよりも、5つのフル消去サイクルを開始して、(各々が0.5msを消費する5つのリセット・コマンドを用いて)それらサイクルを各々0.5ms後にアボートするよう、5msの時間を利用することが好ましい。両選択肢は、フル5msの時間を消費する。 These commands are much shorter than a full erase cycle. (In NAND type flash memory, a full erase cycle takes 2.5 ms, but a reset command takes up to 0.5 ms.) When a full erase cycle is aborted, the memory can be used for any purpose. It remains in a random state that is not useful. Rather than performing two complete full erase cycles, start five full erase cycles and abort them after 0.5 ms each (using five reset commands each consuming 0.5 ms) It is preferable to use a time of 5 ms. Both options consume a full 5ms of time.
(表1、実施例3に示す)本発明の好適実施例では、第一のフラッシュ・ユニットの書き込みは、より高い消去優先度のデータを受信するブロックを記録しながら、任意の方式で実行できる。第一のフラッシュ・ユニットへの書き込み後、以降のフラッシュ・ユニットが、第一のフラッシュ・ユニットの順序と相互に関係する順序で書き込まれる。典型的に、以降のフラッシュ・ユニットは、第一のフラッシュ・ユニットの高消去優先度ブロックに整列されるため、すべてのフラッシュ・ユニット内の同じ(または相互に関連した)アドレスを持つブロックは、同じ消去優先度を持つデータを受信する。このことは、システムが、(上記に説明し、図2に示した)論理消去スライスの構造を通過することを必要とせず、平行に同じアドレスを持つブロックを消去することによって、高消去優先度データを消去することを可能にする。 In the preferred embodiment of the present invention (shown in Table 1, Example 3), the writing of the first flash unit can be performed in any manner while recording the blocks that receive the higher erasure priority data. . After writing to the first flash unit, subsequent flash units are written in an order that is interrelated with the order of the first flash unit. Typically, subsequent flash units are aligned with the high erase priority block of the first flash unit, so blocks with the same (or correlated) address in all flash units are Receive data with the same erasure priority. This eliminates the need for the system to go through the structure of the logical erase slice (described above and shown in FIG. 2), and by erasing blocks with the same address in parallel, Allows erasing data.
注目すべきは、高消去優先度データのために高速消去ブロックを用いること、そして高消去優先度データを共通物理消去スライスに整列させることは、矛盾するプロトコルではなく、好適に一緒に実行できることである。高消去優先度ブロックは、フラッシュ・ユニットの「より高速な部分」に記憶されるが、ブロックは第一のフラッシュ・ユニット内にランダムな順序で記憶される。このランダムな順序は、すべての他のフラッシュ・ユニットに対する順序を定めるため、高消去優先度データは、共通物理消去スライス内に存在することになる。 It should be noted that using a fast erase block for high erase priority data and aligning the high erase priority data to a common physical erase slice is not a conflicting protocol, but can be performed well together. is there. The high erase priority block is stored in the “faster part” of the flash unit, but the blocks are stored in random order in the first flash unit. Since this random order defines the order for all other flash units, high erase priority data will be present in the common physical erase slice.
論理消去スライスの消去、そして物理消去スライスの消去が、同じ順序の消去へ(したがって、同じレベルの最適化へ)導く可能性があるが、物理消去スライスは、(1)より単純に実行でき、そして(2)論理消去スライスを用いる実施例よりも、管理データの管理および記憶の必要が少ない、ということに注目すべきである。したがって、物理消去スライスを用いる実施例が好ましい。 Although erasing logical erase slices and erasing physical erase slices can lead to the same order of erasures (and thus to the same level of optimization), physical erase slices can be performed more simply than (1) It should be noted that (2) management data need not be managed and stored as compared to the embodiment using the logical erase slice. Therefore, an embodiment using a physical erase slice is preferred.
ハードディスク・ドライブは、本発明がカバーする記憶デバイスの典型例であることに留意すべきである。本発明は、フラッシュメモリ記憶デバイスへのみ限定されることはなく、以下の機能の少なくともいくつかを特徴とする記憶システムへ適用でき、それらをカバーすることを意図している。
(1)記憶デバイスは、各々が個々に消去可能な、多くのサブユニットに分割されている。
(2)サブユニットの消去時間は、比較的に長いプロセスである。
(3)サブユニットの完全な消去は、アボートされた消去よりも非常に長い時間を要する。そして
(4)記憶デバイス・コントローラは、どのサブユニット内にもデータを記憶するという柔軟性を持つ。
It should be noted that the hard disk drive is a typical example of the storage device covered by the present invention. The present invention is not limited to flash memory storage devices but is applicable to and covers storage systems featuring at least some of the following functions.
(1) The storage device is divided into a number of subunits, each erasable individually.
(2) The subunit erasing time is a relatively long process.
(3) Complete erasure of subunits takes much longer than aborted erasure. And
(4) The storage device controller has the flexibility to store data in any subunit.
本発明を限られた数の実施例に関して説明したが、本発明の多くの変形、修正、そして他の応用が可能であることは明らかである。 Although the invention has been described with respect to a limited number of embodiments, it will be appreciated that many variations, modifications and other applications of the invention are possible.
Claims (10)
(b)
(i)データ消去優先度を付与してデータを、前記複数のフラッシュ・ユニットを構成する前記複数のブロックの任意のブロックへ書き込むよう動作し、
(ii)前記データが書き込まれたブロックのそれぞれに、書き込まれたデータに付与されたデータ消去優先度と相関関係を持つブロック消去優先度を指定するよう動作し、
(iii)前記複数のフラッシュ・ユニット間で、同一のブロック消去優先度が指定されているブロックを指定する論理消去スライス優先度を指定するよう動作し、
(iv)緊急消去コマンドを受信すると、前記論理消去スライス優先度に従って前記複数の全てのフラッシュ・ユニットの各ブロック内の前記データを消去するよう動作するコントローラと、
を備える優先順位付き消去機能を持つ、不揮発性記憶デバイス。 (A) a storage memory for storing data provided in a non-volatile storage device having a plurality of flash units each composed of a plurality of blocks;
(B)
(I) giving data erasing priority and operating data to be written to any block of the plurality of blocks constituting the plurality of flash units;
(Ii) For each of the blocks in which the data is written, an operation is performed so as to designate a block erase priority correlated with the data erase priority given to the written data;
(Iii) An operation is performed to designate a logical erase slice priority that designates a block in which the same block erase priority is designated among the plurality of flash units.
(Iv) upon receiving an emergency erase command, a controller that operates to erase the data in each block of all of the plurality of flash units according to the logical erase slice priority;
A non-volatile storage device having a prioritized erase function.
(v)各ブロックの前記論理消去スライス優先度のログを記憶するよう動作し、
(vi)前記緊急消去コマンドを受信すると、前記ログ内に記憶された前記論理消去スライス優先度に従って前記複数の全てのユニットのブロック内の前記データを消去するよう動作する、請求項1に記載のデバイス。 The controller is
(V) operate to store a log of the logical erase slice priority for each block;
(Vi) upon receiving the emergency erase command, operative to erase the data in a block of all of the plurality of units according to the logical erase slice priority stored in the log. device.
(b)
(i)前記複数のフラッシュ・ユニットを構成する前記複数のブロックに、前記複数のフラッシュ・ユニット間において所定の順序でブロック消去優先度の指定を実行するよう動作し、
(ii)データ消去優先度を付与してデータを、前記データ消去優先度と相関関係を持つブロック消去優先度が指定されたブロックに書き込むよう動作し、
(iii)緊急消去コマンドを受信すると、前記ブロック消去優先度に従って前記複数の全てのフラッシュ・ユニットの各ブロック内の前記データを消去するよう動作するコントローラと、
を備える優先順位付き消去機能を持つ不揮発性記憶デバイス。 (A) a storage memory for storing data provided in a non-volatile storage device having a plurality of flash units each composed of a plurality of blocks;
(B)
(I) The block constituting the plurality of flash units operates to execute designation of block erase priority in a predetermined order between the plurality of flash units;
(Ii) An operation is performed such that data erasure priority is assigned and data is written to a block having a block erasure priority designated with a correlation with the data erasure priority,
(Iii) upon receipt of an emergency erase command, a controller that operates to erase the data in each block of all of the plurality of flash units according to the block erase priority;
A non-volatile storage device having a prioritized erase function.
データ消去優先度を付与してデータを、前記複数のフラッシュ・ユニットを構成する前記複数のブロックの任意のブロックへ書き込むステップと、
前記データが書き込まれたブロックのそれぞれに、書き込まれたデータに付与されたデータ消去優先度と相関関係を持つブロック消去優先度を指定するステップと、
前記複数のフラッシュ・ユニット間で、同一のブロック消去優先度が指定されているブロックを指定する論理消去スライス優先度を指定するステップと、
緊急消去コマンドを受信すると、前記論理消去スライス優先度に従って前記複数の全てのフラッシュ・ユニットの各ブロック内の前記データを消去するステップと、
を備える、方法。 A non-volatile storage device having a plurality of flash units each composed of a plurality of blocks and a controller , wherein the controller erases data stored in the non-volatile storage device with priority.
Writing data to an arbitrary block of the plurality of blocks constituting the plurality of flash units by giving a data erasing priority; and
Designating a block erase priority having a correlation with a data erase priority assigned to the written data for each of the blocks in which the data is written;
Designating a logical erase slice priority for designating a block having the same block erase priority designated among the plurality of flash units;
Erasing the data in each block of all of the plurality of flash units according to the logical erase slice priority upon receipt of an emergency erase command;
A method comprising:
各ブロックの前記論理消去スライス優先度のログを記憶するよう動作するステップを備え、
前記データを消去するステップが、前記緊急消去コマンドを受信すると、前記ログ内に記憶された前記論理消去スライス優先度に従って前記複数の全てのフラッシュ・ユニットの各ブロック内の前記データを消去するよう動作するステップを含む、請求項6に記載の方法。 The controller is
Operative to store a log of said logical erase slice priority for each block;
The step of erasing the data, when receiving the emergency erase command, operates to erase the data in each block of all the plurality of flash units according to the logical erase slice priority stored in the log The method of claim 6 including the step of:
前記複数のフラッシュ・ユニットを構成する前記複数のブロックに、前記複数のフラッシュ・ユニット間において所定の順序でブロック消去優先度の指定するステップと、
データ消去優先度を付与してデータを、前記データ消去優先度と相関関係を持つブロック消去優先度が指定されたブロックに書き込むステップと、
緊急消去コマンドを受信すると、前記ブロック消去優先度に従って前記複数の全てのフラッシュ・ユニットの各ブロック内の前記データを消去するステップと、
を備える、方法。 A non-volatile storage device having a plurality of flash units each composed of a plurality of blocks and a controller , wherein the controller erases data stored in the non-volatile storage device with priority.
Designating block erasure priority in a predetermined order among the plurality of flash units to the plurality of blocks constituting the plurality of flash units;
A step of assigning a data erasing priority and writing the data to a block designated with a block erasing priority correlated with the data erasing priority;
Receiving an emergency erase command, erasing the data in each block of all of the plurality of flash units according to the block erase priority;
A method comprising:
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US82445206P | 2006-09-04 | 2006-09-04 | |
US60/824,452 | 2006-09-04 | ||
US11/797,377 US8117414B2 (en) | 2006-09-04 | 2007-05-03 | Method for prioritized erasure of flash memory |
US11/797,378 US7975119B2 (en) | 2006-09-04 | 2007-05-03 | Device for prioritized erasure of flash memory |
US11/797,378 | 2007-05-03 | ||
US11/797,377 | 2007-05-03 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009527279A Division JP5065395B2 (en) | 2006-09-04 | 2007-09-02 | Device and method for prioritized erase of flash memory |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012216234A JP2012216234A (en) | 2012-11-08 |
JP5486047B2 true JP5486047B2 (en) | 2014-05-07 |
Family
ID=38917809
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009527279A Expired - Fee Related JP5065395B2 (en) | 2006-09-04 | 2007-09-02 | Device and method for prioritized erase of flash memory |
JP2012141348A Expired - Fee Related JP5486047B2 (en) | 2006-09-04 | 2012-06-22 | Device and method for prioritized erase of flash memory |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009527279A Expired - Fee Related JP5065395B2 (en) | 2006-09-04 | 2007-09-02 | Device and method for prioritized erase of flash memory |
Country Status (5)
Country | Link |
---|---|
JP (2) | JP5065395B2 (en) |
KR (1) | KR101429898B1 (en) |
CN (1) | CN101529370B (en) |
TW (1) | TWI375227B (en) |
WO (1) | WO2008029389A1 (en) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5338306B2 (en) * | 2008-12-26 | 2013-11-13 | 富士通株式会社 | Data storage device and data management method in data storage device |
WO2010128963A1 (en) * | 2009-05-04 | 2010-11-11 | Hewlett-Packard Development Company, L.P. | Storage device erase command having a control field controllable by a requestor device |
CN102741822B (en) * | 2010-12-13 | 2015-09-09 | 联发科技(新加坡)私人有限公司 | Mobile device, NOR flash memory controller and method of operating thereof and error recovery method |
TWI423023B (en) | 2011-04-22 | 2014-01-11 | Silicon Motion Inc | Data selection method for flash memory and data storage device |
JP6107286B2 (en) * | 2013-03-25 | 2017-04-05 | 日本電気株式会社 | Distributed storage system, node, data management method, and program |
JP6253009B2 (en) * | 2013-08-28 | 2017-12-27 | 東海光学株式会社 | Optical products and eyeglass lenses |
KR20150116352A (en) | 2014-04-07 | 2015-10-15 | 삼성전자주식회사 | Memory control method and system |
US20160188890A1 (en) * | 2014-12-26 | 2016-06-30 | Intel Corporation | Security mode data protection |
US20170344295A1 (en) * | 2016-05-31 | 2017-11-30 | Sandisk Technologies Llc | System and method for fast secure destruction or erase of data in a non-volatile memory |
US9633738B1 (en) * | 2016-06-28 | 2017-04-25 | Sandisk Technologies Llc | Accelerated physical secure erase |
CN106339324B (en) * | 2016-08-19 | 2019-05-10 | 浪潮(北京)电子信息产业有限公司 | A kind of method and device selecting garbage reclamation block |
CN107463341A (en) * | 2017-08-25 | 2017-12-12 | 上海闻泰电子科技有限公司 | Method for deleting, device and the mobile terminal of FLASH chip |
CN109817271A (en) * | 2018-11-21 | 2019-05-28 | 中国航空工业集团公司洛阳电光设备研究所 | A kind of detection method of solid state hard disk bad block |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3359942B2 (en) * | 1992-10-29 | 2002-12-24 | 株式会社東芝 | Memory card device |
CN2168322Y (en) * | 1993-02-22 | 1994-06-08 | 傅忠民 | Erasable and programmable accumulator |
GB2317722B (en) * | 1996-09-30 | 2001-07-18 | Nokia Mobile Phones Ltd | Memory device |
US7003621B2 (en) * | 2003-03-25 | 2006-02-21 | M-System Flash Disk Pioneers Ltd. | Methods of sanitizing a flash-based data storage device |
JP3978410B2 (en) * | 2003-06-03 | 2007-09-19 | 株式会社リコー | Image control apparatus, image forming apparatus, image control method, image control program, and recording medium |
JP2006155159A (en) * | 2004-11-29 | 2006-06-15 | Fuji Electric Holdings Co Ltd | Tamper-proof device |
-
2007
- 2007-09-02 CN CN2007800385498A patent/CN101529370B/en active Active
- 2007-09-02 WO PCT/IL2007/001081 patent/WO2008029389A1/en active Application Filing
- 2007-09-02 KR KR1020097004581A patent/KR101429898B1/en active IP Right Grant
- 2007-09-02 JP JP2009527279A patent/JP5065395B2/en not_active Expired - Fee Related
- 2007-09-03 TW TW096132772A patent/TWI375227B/en not_active IP Right Cessation
-
2012
- 2012-06-22 JP JP2012141348A patent/JP5486047B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101529370A (en) | 2009-09-09 |
CN101529370B (en) | 2012-02-22 |
KR20090047513A (en) | 2009-05-12 |
JP2012216234A (en) | 2012-11-08 |
TWI375227B (en) | 2012-10-21 |
KR101429898B1 (en) | 2014-08-13 |
WO2008029389A1 (en) | 2008-03-13 |
JP2010503103A (en) | 2010-01-28 |
JP5065395B2 (en) | 2012-10-31 |
TW200822124A (en) | 2008-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5486047B2 (en) | Device and method for prioritized erase of flash memory | |
US7975119B2 (en) | Device for prioritized erasure of flash memory | |
US8041879B2 (en) | Flash memory backup system and method | |
US8966163B2 (en) | Non-volatile memory device and method for programming the same | |
KR101563875B1 (en) | Method and system for balancing host write operations and cache flushing | |
US8117414B2 (en) | Method for prioritized erasure of flash memory | |
JP5418808B2 (en) | Adaptive hybrid density memory storage control method and adaptive hybrid density memory storage | |
US8225050B2 (en) | Memory storage device and a control method thereof | |
TW200845016A (en) | Non-volatile memory with dynamic multi-mode operation | |
JP2008198206A (en) | Data processing system, operation method therefor, data processing device, and operation method for data storage device | |
US20100030948A1 (en) | Solid state storage system with data attribute wear leveling and method of controlling the solid state storage system | |
US8274840B2 (en) | Nonvolatile memory devices having built-in memory cell recovery during block erase and methods of operating same | |
JP2009230414A (en) | Storage device having plurality of nonvolatile memory devices | |
US8081517B2 (en) | Solid state storage system for uniformly using memory area and method controlling the same | |
US9886399B2 (en) | Storage control device, storage device, information processing system, and storage control method therefor | |
US9304906B2 (en) | Memory system, controller and control method of memory | |
WO2014185038A1 (en) | Semiconductor storage device and control method thereof | |
US20160124844A1 (en) | Data storage device and flash memory control method | |
JP3977859B2 (en) | Nonvolatile semiconductor memory device and control method thereof | |
JP2003242788A (en) | Nonvolatile semiconductor memory device and control method therefor | |
JP2006053950A (en) | Nonvolatile semiconductor memory device and its control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131011 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131018 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140108 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140124 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140220 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5486047 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |