TW200847162A - Methods for storing memory operations in a queue - Google Patents

Methods for storing memory operations in a queue Download PDF

Info

Publication number
TW200847162A
TW200847162A TW97108560A TW97108560A TW200847162A TW 200847162 A TW200847162 A TW 200847162A TW 97108560 A TW97108560 A TW 97108560A TW 97108560 A TW97108560 A TW 97108560A TW 200847162 A TW200847162 A TW 200847162A
Authority
TW
Taiwan
Prior art keywords
memory
queue
storage system
volatile memory
priority
Prior art date
Application number
TW97108560A
Other languages
Chinese (zh)
Other versions
TWI380303B (en
Inventor
Shai Traister
Original Assignee
Sandisk 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
Priority claimed from US11/726,648 external-priority patent/US7987332B2/en
Priority claimed from US11/726,646 external-priority patent/US20080235480A1/en
Application filed by Sandisk Corp filed Critical Sandisk Corp
Publication of TW200847162A publication Critical patent/TW200847162A/en
Application granted granted Critical
Publication of TWI380303B publication Critical patent/TWI380303B/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

A method for operating a non-volatile memory storage system is provided. In this method, a queue that is configured to store memory operations associated with two or more types of memory operations. Here, memory operations are associated with the maintenance of the non-volatile memory storage system. A memory operation is scheduled for execution in response to an event and the memory operation is stored in the queue.

Description

200847162 九、發明說明: 【發明所屬之技術領域】 本發明大體上係關於記憶體操作,且更㈣言之,係關 於儲存記憶體操作於佇列中之方法及系統。 , 【先前技術】 • 非揮發性記憶體儲存系統可接收、傳輸或發出與記憶體 之操作相關聯的操作或指令。由非揮發性記憶體儲存系統 #收或發出之多數記憶體操作經立即執行'然而,歸因於 • $同定時限制(例如,初始化逾時、寫入命令逾時限制, :其他定時限制)’可能未分配足夠時間以完全地執行記 憶體操作。結果,在下一可用時槽之前可使記憶體操作之 卜遲或在下_人觸發s己憶體操作之前可忽視記憶體操 作之執行。 、 二削’記憶體操作臨時儲存於非揮發性記憶體儲存系統 之隨機存取記憶體(RAM)中。然而,RAM經組態以餘存每 •—類型之延遲記憶體操作中之僅-者。舉例而言,若非揮 ^ "己匕體儲存系統需要再新一區塊且結果觸發一廢棄項 收木操作’則該廢棄項目收集操作可儲存於RAM中且經 ^遲用於在稍後時間執行。另一方面,^非揮發性記憶體 、冑存糸統需要再新兩個區塊,則與該等再新相關聯之兩個 廢棄項目收集操作不儲存於RAM中。此外,一旦功率損失 ^ ^,則儲存於RAM中之資訊丢失,且在下次觸發此記憶 體钿作之前將不執行記憶體操作。此資訊損失可導致存取 錯决且降低非揮發性記憶體儲存系統之可靠性。結果,正 129496.doc 200847162 繼續努力改良記憶體操作於非揮發性記憶體儲存系統中之 儲存。 【發明内容】 本發明之各種實施例提供用於儲存記憶體操作於仔列中 之方法及系統。應瞭解’可以眾多方式來實施該等實施 例’包括以方法、電路、系統或器件之形式。在下文中描 述本發明之若干實施例。 在一貫施例中200847162 IX. DESCRIPTION OF THE INVENTION: TECHNICAL FIELD OF THE INVENTION The present invention relates generally to memory operations and, more particularly, to methods and systems for storing memory in a queue. [Prior Art] • A non-volatile memory storage system can receive, transmit, or issue operations or instructions associated with the operation of a memory. Most memory operations received or issued by the non-volatile memory storage system # are immediately executed 'however, due to • $ same timing limit (eg, initialization timeout, write command timeout limit, other timing restrictions) 'There may not be enough time allocated to fully perform the memory operation. As a result, the execution of the memory gymnastics can be ignored before the next available time slot can be delayed by the memory operation or before the next _ person triggers the suffix operation. The two-cut memory operation is temporarily stored in random access memory (RAM) of the non-volatile memory storage system. However, the RAM is configured to survive only one of every type of delay memory operation. For example, if the non-volume storage system needs a new block and the result triggers an obsolete item, the waste collection operation can be stored in RAM and later used later. Time execution. On the other hand, if the non-volatile memory and the storage system need to re-create two new blocks, the two discarded project collection operations associated with the new ones are not stored in the RAM. In addition, once the power loss ^ ^, the information stored in the RAM is lost, and the memory operation will not be performed until the next time the memory is triggered. This loss of information can result in incorrect access and reduce the reliability of the non-volatile memory storage system. As a result, positive 129496.doc 200847162 continued efforts to improve the storage of memory in non-volatile memory storage systems. SUMMARY OF THE INVENTION Various embodiments of the present invention provide methods and systems for storing memory in a row. It should be understood that the embodiments may be embodied in a multitude of ways, including in the form of a method, circuit, system, or device. Several embodiments of the invention are described below. In consistent practice

'· π μ丨山❸呢,脰屬仔糸統 之方法。在此方法中’ 一佇列經組態以儲存與兩種或兩種 以上類型的記憶體操作相關聯的記憶體操作。此處,記情'· π μ丨山❸, 脰 is a method of 糸 。. In this method, a column is configured to store memory operations associated with two or more types of memory operations. Here, remember

體操作與非揮發性記憶體儲存系統之維護相關聯。排程I 呂己憶體操作使其回應於一事株而拥— 爭件而執订,且該記憶體操作儲 存於該佇列中。 結合附圖’借助於實例說明本發明之原理,由以下詳細 描述顯見本發明之其他實施例及優點。 、 【實施方式】 結合附圖 參考數字指 在下文中 述。詳細描 特定實施例 代、修改及 提供詳盡理 無此等特定 ,將易於由以下詳細描述理解本發明,且相似 定相似結構元件。 連同附圖-起提供對—或多個實施例之詳細描 述係、、Ό 5此等實施例來提供,但其不限於任何 。範嘴僅受中請專利範圍限制,且涵蓋眾多替 等效物在以下描述中陳述眾多特定細節以便 解提仏此等細節以達成舉例之目的,且可在 、、田節中之~些或全部的情況下根據申請專利範 129496.doc 200847162 圍來實施所描述之實施例。為 马達成清楚之目的,未詳細地 描述在與該等實施例有 、 關之技術領域中已知的技術材料以 避免不必要地使描述晦溫難懂。Body operations are associated with maintenance of a non-volatile memory storage system. Scheduling I's the operation of the memory, in response to a continuation, and the memory operation is stored in the queue. Other embodiments and advantages of the present invention will be apparent from the description and appended claims. [Embodiment] Referring to the drawings, reference numerals are described below. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention will be understood from the following detailed description, and similar structural elements are similar. The detailed description of the embodiments, or the embodiments, are provided in conjunction with the accompanying drawings, but are not limited to any. The scope of the patent is limited only by the scope of the patent application, and the numerous equivalents are recited in the following description in order to clarify the details for the purpose of example, and may be in the The described embodiments are implemented in all cases in accordance with the patent application 129496.doc 200847162. For the purpose of achieving clarity for the horse, the technical materials known in the technical fields related to the embodiments are not described in detail to avoid unnecessarily obscuring the description.

本文所描述之實施例提供儲存記憶體操作於—符列中之 方法及/或系統。該仔列儲存於非揮發性記憶體儲存系统 t,且如下文更詳細地解釋’該仔列經組態以儲存記憶體 細作。6己憶體#作可由非揮發性記憶體健存系統讀取且經 排程以詩執行。在—實_巾,非揮發性記憶體儲存系 統亦將優先級指派給記憶體操作且儲存該等優先級於同一 佇列中。 圖1為根據本發明之一實施例的非揮發性記憶體儲存系 統之一實例的簡化方塊圖。一主機系統(例如,桌上型電 腦、音訊播放機、數位相機及其他計算器件)可將資料寫 入至非揮發性記憶體儲存系統102或自非揮發性記憶體儲 存系統102讀取資料。非揮發性記憶體儲存系統1〇2可嵌入 於該主機内或可移式地連接至該主機。如圖1中所示,非 揮發性記憶體儲存系統1 02包括與記憶體11 8通信之記憶體 控制姦110。大體上,記憶體控制器11 〇控制記憶體丨1 8之 操作。記憶體控制器11 0包括經由主機介面i 〇4與系統匯流 排126介面連接之匯流排124。記憶體控制器11〇進一步經 由3己憶體介面10 8與記憶體11 8介面連接。主機介面1 〇 4、 處理器106(例如,微處理器、微控制器及其他處理器)、記 憶體介面108、隨機存取記憶體(RAM)l 12、錯誤校正碼 (ECC)電路114及唯讀記憶體(R〇M)l 16係借助於匯流排124 129496.doc 200847162 來通h。ROM 116可儲存包括用於控制記憶體118之操作 的私式指令的儲存系統韌體。處理器1 〇6經組態以執行自 ROM 116或自非揮發性記憶體單元陣列122載入之程式指 令。可將儲存系統韌體臨時地載入於RAM 112中,且另 外,該RAM可用於緩衝在主機與記憶體丨丨8之間傳送的資 料。此外,RAM 112可經組態以儲存記憶體操作之佇列 131。ECC電路114可檢查在主機與記憶體118之間經過記 憶體控制器110的錯誤。若發現錯誤,則ECC電路114可校 正多個錯誤位元,數目視所利用之ECC演算法而定。 記憶體118可包括陣列邏輯12〇及非揮發性記憶體單元陣 列122。非揮發性記憶體單元陣列ι22可包括非揮發性記憶 體結構與技術之多種組合或一組合。非揮發性記憶體技術 之實例包括快閃記憶體(例如,NAND、NOR、單層式單元 (SLC/BIN)、多層式單元(MLC)、分割位元線nor(din〇r)、 AND、高電容耦合率(HiCR)、非對稱不接觸電晶體(AcT) 及其他快閃記憶體)、可擦可程式化唯讀記憶體 (EPROM)、電可擦可程式化唯讀記憶體(EEPROM)、唯讀 記憶體(ROM)、一次性可程式化記憶體(οτρ)及其他記情 體技術。除RAM 112外,記憶體操作之佇列13〇亦可儲存 於非揮發性記憶體單元陣列122中。 此外’陣列邏輯120使記憶體控制器Π0與非揮發性記情、 體單元陣列122介面連接且可向非揮發性記憶體單元陣列 提供(例如)定址、資料傳送及感測,及其他支援。為支援 非揮發性記憶體單元陣列122,陣列邏輯120可包括列解碼 129496.doc 200847162 為、仃解碼器、電荷泵、字線電壓產。 入/輸出缕备抑, 貝较衝裔、輪 J出緩衝益、位址緩衝器及其他電路。 = 為根據本發明之—實施例的儲存記憶體操 =的總體概觀之流程圖。開始於27〇處 = =:存系統中提供,,列可包括經組態! ΓΓ操作之多種f料結構。資料結構之實例包括 表、陣列及其他資料結構。此處, 可儲在盥_斗、# α t 口茨4 丁列 〜或夕種類型之記憶體操作相關聯的 刼作。在另一實施例中,該 匕體 储存與兩種或兩種以上 員1之記憶體操作相關聯的記憶體操作。舉例而言,奸 1 可儲存對兩個不同區塊操作之兩個廢棄項目彳:集;二 :-廢棄項目收集操作為一類型或單一類型之記憶體摔 卞)。另外,該仔列可儲存對五個不同區塊操作之五個讀 取淨化處理(serub)操似-讀取淨化處理操作為—類型^ 單-類型之記憶體操作)。該传列可儲存於非揮發性記憶 體儲存系統内之多種記憶體中。在_實施例中該仔列儲 存於該非揮發性記憶體儲存系、統内之非揮發性記憶體單元 陣列中。在另—實施例中’該符列儲存於該非揮發性記憶 體儲存系統内之隨機存取記憶體中。在又一實施例中,該 佇列儲存於該非揮發性記憶體儲存系統内之隨機存取記憶 體及非揮發性記憶體單元陣列兩者中。 一記憶體操作為一指導非揮發性記憶體儲存系統執行任 務的指令。在一實施例中,記憶體操作可與非揮發性記憶 體儲存系統之維護相關聯。此等記憶體操作可被稱作内務 129496.doc 200847162 (house keeping)操作。内務操作包括不傳輸至主機或 主機請求的記憶體操作。因此,舉例而言,内務操二 括除由主機請求或發起之擦除操作、寫入操作及讀取Z包 外的所有記憶體操作。内務操作之實例包括廢棄項目呆2 集、磨損均勻化(wear leveling)、讀取淨化處理、收 衝區塊清除、寫入緩衝區塊壓縮、程式錯誤復原、寫入 止復原及其他記憶體操作。請注意,在廢棄項目收集= 中,將來自一區塊之有效資料複製至另一區塊。在:送該 有效資料後,擦除原始區塊以提供儲存容量。對儲存= 憶體中之資料的區塊週期性地進行廢棄項目收集(意即$ 壓縮或合併)以再生記憶體之儲存容量。在磨損玉"化 中週期性地重定位儲存於非揮發性記憶體單元陣列中之 邏輯貝料’使得資料在非揮發性記憶體單元陣列之整個 體工間中遷移’且所有區塊被均—地磨損。亦應瞭解,在 使用非揮發性記憶體儲存系統時,記憶體單元之臨限位準 可能損失邊限’藉此產生不易於㈣到之軟錯誤。可連續 地淨化處理非揮發性記憶體單元陣列以使記憶體單元維持 ;’、田邊限内。在_取淨化處理操作中,測試記憶體單 疋:':定,持其邊限,且若非如此,則以適當邊限重 寫。L體單兀。在寫入緩衝區塊清除中,將儲存於寫入缓 :區塊中之資料複製至另一區塊。在寫入緩衝區塊壓縮 :,壓縮儲存於寫人緩衝區塊中之有效資料。亦應瞭解, 如 •” 卜揮卷性記憶體單元陣列之一區域(例 如’-區塊)時,寫入操作可能失敗。在程式錯誤復原 129496.doc 200847162 中,將在失敗之宜λ 4W ^ 複製至另一位¥呆作之前儲存於此區域中之有效資料 類似地,若在至非揮發性記憶體單元陣 列之一區域的寫入操作期間功率損失發生,則在寫入中止 復原令將在功率損失之前寫入的有效資料複製至另一位 置。 在272處’排程—記憶體操作以使其回應於—事件 行。在非揮發性記憶體儲存系統中之一事件可觸發一記憶 體操作。一事件可為非揮發性記憶體健存系統内的一㈣ 之積測二-條件之滿足,或一準則之滿足。或者,一料 可為執仃-記憶體操作之命令的接收。事件之實例包括 主機接收觸發—更新區塊之閉合的資料、在-更新區塊中 偵測一程式化失敗、侦測觸發在一區塊中之寫入中止復原 的寫入中止條件、滿足再新樓案系統區塊之準則、滿足對 品鬼之磨才貝均勻化的準則、滿足觸發控制區塊(例如, 寫入緩衝區塊、映射區塊、索引區塊、寫入緩衝區塊索引 區塊’及其他控制區塊)之塵縮的準則(例如,控制區塊中 剩餘之空間量),及其他事件。視觸發記憶體操作之事件 及非揮發性記憶體儲存系統之狀態而定,記憶體操作可經 排程以用於立即執行或經排程以用於在稍後時間執行。舉 例而言,若非揮發性記憶體儲存系統目前正寫入資料,則 非揮發性記憶體儲存系統可排程所觸發之記憶體操作以用 於在寫入資料後執行。在另-實例中,若非揮發性記憶體 儲存糸統不繁忙,則可排程接收到之記憶體操作以用於立 即執行。 129496.doc 200847162 體操作以用於執行,在274處將該記 儲存Μ内 列中。該仔列可儲存於非揮發性記憶體 :存糸統内之多種記憶體區域中。舉例而言,如下文中更 评細地解釋’可跨一或多個區段、頁或 列。若該佇列儲存於非揮、Ί =子以丁 开评知丨王圯『思體早兀陣列中,則 純非揮發性記憶體儲存系統之情況下心丟失儲存於該 士 2* U體操作。在初始化非揮發性記憶體儲存系統Embodiments described herein provide methods and/or systems for storing memory operations in a -. The train is stored in a non-volatile memory storage system t and is explained in more detail below. The train is configured to store memory. The 6 memory can be read by the non-volatile memory storage system and scheduled to be executed in poetry. In the case of a non-volatile memory storage system, the priority is also assigned to the memory operation and the priorities are stored in the same queue. 1 is a simplified block diagram of one example of a non-volatile memory storage system in accordance with an embodiment of the present invention. A host system (e.g., a desktop computer, audio player, digital camera, and other computing device) can write data to or read data from the non-volatile memory storage system 102. The non-volatile memory storage system 1〇2 can be embedded within the host or can be movably connected to the host. As shown in FIG. 1, the non-volatile memory storage system 102 includes a memory control 110 in communication with the memory 118. In general, the memory controller 11 controls the operation of the memory port 18. The memory controller 110 includes a bus bar 124 that is interfaced with the system bus 126 via a host interface i 〇4. The memory controller 11 is further interfaced with the memory 11 8 via the 3 memory interface 108. a host interface 1 〇 4, a processor 106 (eg, a microprocessor, a microcontroller, and other processors), a memory interface 108, a random access memory (RAM) 12, an error correction code (ECC) circuit 114, and The read-only memory (R〇M) 16 is connected to h by means of busbars 124 129496.doc 200847162. The ROM 116 can store a storage system firmware including private instructions for controlling the operation of the memory 118. Processor 1 〇 6 is configured to execute program instructions loaded from ROM 116 or from non-volatile memory cell array 122. The storage system firmware can be temporarily loaded into the RAM 112, and in addition, the RAM can be used to buffer information transferred between the host and the memory port 8. Additionally, RAM 112 can be configured to store a bank 131 of memory operations. The ECC circuit 114 can check for errors that pass through the memory controller 110 between the host and the memory 118. If an error is found, the ECC circuit 114 can correct a plurality of error bits, the number depending on the ECC algorithm utilized. Memory 118 can include array logic 12A and non-volatile memory cell array 122. The non-volatile memory cell array ι 22 may comprise various combinations or a combination of non-volatile memory structures and techniques. Examples of non-volatile memory technologies include flash memory (eg, NAND, NOR, single layer cell (SLC/BIN), multi-level cell (MLC), split bit line nor(din〇r), AND, High capacitance coupling ratio (HiCR), asymmetric contactless transistor (AcT) and other flash memory), erasable programmable read only memory (EPROM), electrically erasable programmable read only memory (EEPROM) ), read-only memory (ROM), one-time programmable memory (οτρ) and other notation techniques. In addition to the RAM 112, the bank 13 of memory operations can also be stored in the non-volatile memory cell array 122. In addition, the array logic 120 interfaces the memory controller 与0 with the non-volatile cryptographic, body cell array 122 and provides, for example, addressing, data transfer and sensing, and other support to the non-volatile memory cell array. To support the non-volatile memory cell array 122, the array logic 120 can include column decoding 129496.doc 200847162, 仃 decoder, charge pump, word line voltage production. Input/output 缕 抑 , 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝 贝= is a flow chart of a general overview of stored memory gymnastics = according to an embodiment of the invention. Starting at 27〇 = =: Provided in the storage system, the columns can be configured!多种 Operation of a variety of f material structure. Examples of data structures include tables, arrays, and other data structures. Here, it can be stored in the memory operation of the 盥_斗, #α t口茨4丁列~~ or the type of memory operation. In another embodiment, the cartridge stores memory operations associated with memory operations of two or more members. For example, trait 1 can store two obsolete items that operate on two different blocks: set; two: - the waste collection operation is a type or a single type of memory wrestling). In addition, the trainer can store five read-and-clean processing (serub) operations for five different block operations - read clean processing operations as - type ^ single-type memory operations). The hash can be stored in a variety of memories in a non-volatile memory storage system. In the embodiment, the array is stored in the non-volatile memory storage system, the non-volatile memory unit array. In another embodiment, the register is stored in random access memory in the non-volatile memory storage system. In yet another embodiment, the array is stored in both the random access memory and the non-volatile memory cell array within the non-volatile memory storage system. A memory gymnastic is an instruction to direct the non-volatile memory storage system to perform tasks. In one embodiment, memory operations can be associated with maintenance of a non-volatile memory storage system. These memory operations can be referred to as housekeeping 129496.doc 200847162 (house keeping) operations. Housekeeping operations include memory operations that are not transmitted to the host or host request. Thus, for example, the housekeeping operation includes all memory operations other than the erase operation, the write operation, and the read Z packet requested or initiated by the host. Examples of housekeeping operations include 2 sets of discarded items, wear leveling, read cleanup, block clearing, write buffer block compression, program error recovery, write recovery, and other memory operations. . Please note that in the Waste Project Collection =, valid data from one block is copied to another block. After the valid data is sent, the original block is erased to provide the storage capacity. The blocks of the data stored in the memory are periodically discarded (ie, compressed or merged) to reproduce the storage capacity of the memory. Periodically relocating the logic material stored in the non-volatile memory cell array in the wear jade " makes the data migrate throughout the entire physical memory of the non-volatile memory cell array' and all blocks are All-ground wear. It should also be appreciated that when using a non-volatile memory storage system, the threshold level of the memory unit may lose margins' thereby creating soft errors that are not easily (four). The non-volatile memory cell array can be continuously cleaned to maintain the memory cell; ', within the field margin. In the _take cleanup operation, the test memory is 疋: ': fixed, with its margin, and if not, it is overwritten with the appropriate margin. L body single sputum. In the write buffer block clear, the data stored in the write buffer: block is copied to another block. In the write buffer block compression:, compress the valid data stored in the write buffer block. It should also be understood that a write operation may fail when one of the areas of the array of memory cells (such as '-blocks) is lost. In the program error recovery 129496.doc 200847162, the failure will be λ 4W ^ Copy to another valid data stored in this area before staying. Similarly, if the power loss occurs during a write operation to an area of the non-volatile memory cell array, the write resume command is written. Copy the valid data written before the power loss to another location. At 272, 'schedule-memory operates to respond to the event line. One event in the non-volatile memory storage system can trigger one Memory operation. An event may be the satisfaction of one (four) of the two-conditions in the non-volatile memory storage system, or a criterion, or one of the commands for the operation of the memory-memory operation. Examples of the event include the host receiving the trigger—the data of the closed block of the update block, the detection of a stylized failure in the update block, and the detection of the write abort of the write abort recovery in a block. , meet the criteria of the re-new building system block, meet the criteria for homogenization of the product, meet the trigger control block (for example, write buffer block, map block, index block, write The criteria for dust shrinking of buffer block index blocks 'and other control blocks' (for example, the amount of space remaining in the control block), and other events. Events that trigger memory operations and non-volatile memory storage systems Depending on the state, memory operations can be scheduled for immediate execution or scheduled for execution at a later time. For example, if the non-volatile memory storage system is currently writing data, it is non-volatile. The memory storage system can schedule the memory operation triggered by the data to be executed after the data is written. In another example, if the non-volatile memory storage system is not busy, the memory can be scheduled to be received. Operation for immediate execution. 129496.doc 200847162 Body operation for execution, stored in the column at 274. The column can be stored in non-volatile memory: multiple memory in the system In the area For example, as explained in more detail below, 'can be spanned by one or more sections, pages or columns. If the queue is stored in non-wing, Ί = sub-indicated by Ding Kai, 丨王圯In the case of a pure non-volatile memory storage system, the heart is lost and stored in the 2* U body operation. Initializing the non-volatile memory storage system

%,將非揮發性記憶體儲存系統設為—初始狀態。在非揮 们生記憶體儲存系統與主機分離且㈣重新連接至主機 時:或在非揮發性記憶體儲存系統自該主機接收—重設命 令時’在功率循環之情況下,可發生非揮發性記憶體儲存 糸統之初始化。 圖3為記憶體單元陣列成為平面之組織的簡化方塊圖。 如上所述,該仵列可儲存於非揮發性記憶體儲存系統内之 夕種圮fe體區域中。請注意,可將一或多個記憶體單元陣 列刀成夕個平面或子陣列。在圖3之實例中,㉟一記憶體 單元陣列分成四個平面2〇2至2〇5。其他數目之平面(諸 4 $、16或更多)可存在於一非揮發性記憶體 儲存系統中。可將每一平面2〇2、2〇3、2〇4或2〇5分成記憶 體單元之區塊’諸如,位於各別平面2〇2至205中之區塊 210至213及220至223。記憶體單元之一區塊為實體上可一 起擦除之最小數目的記憶體單元。為增加並行性,可在較 大兀區塊單元中操作區塊,其中將來自每一平面2〇2、 203、204或205之一區塊邏輯上鏈接在一起以形成一元區 129496.doc •12- 200847162 A牛例而ϋ ,可將四個區塊21〇至213邏輯 以形成一元區璜。士从^ 斗上鍵接在起 各別 J =,用於形成元區塊之區塊可來自其 言,可將來白 至2〇5)内之各個位置。舉例而 、自各別平面202至205内之各個位置的 220至223邏輯上錄技乂 ^ 罝妁四個&塊 可延展越過非揮發性 品 面2〇2 皁^生5己丨思體儲存糸統内之所有四個邏輯平 $至205,或非揮發性記憶體儲存系統可由一或多個不 5平面中之—或多個區塊動態地形成元區塊。%, set the non-volatile memory storage system to the initial state. When the non-volatile memory storage system is separated from the host and (4) reconnected to the host: or when the non-volatile memory storage system receives from the host - reset command 'in the case of power cycling, non-volatile Initialization of the memory storage system. Figure 3 is a simplified block diagram of the organization of the memory cell array as a plane. As noted above, the array can be stored in the area of the femoral body within the non-volatile memory storage system. Note that one or more memory cell arrays can be spliced into a single plane or sub-array. In the example of Fig. 3, the 35-memory cell array is divided into four planes 2〇2 to 2〇5. Other numbers of planes (4, 16, or more) may be present in a non-volatile memory storage system. Each plane 2〇2, 2〇3, 2〇4 or 2〇5 can be divided into blocks of memory cells such as blocks 210 to 213 and 220 to 223 located in respective planes 2〇2 to 205. . A block of memory cells is the smallest number of memory cells that can be physically erased together. To increase parallelism, blocks can be manipulated in larger block units, where blocks from each plane 2〇2, 203, 204, or 205 are logically linked together to form a unitary area 129496.doc • 12- 200847162 A cattle case, you can turn the four blocks 21 to 213 logic to form a one-dimensional zone. From the ^ bucket button to the respective J =, the block used to form the metablock can come from its words, and can be white to 2〇5). For example, 220 to 223 logically recorded from each position in the respective planes 202 to 205. The four & blocks can be extended over the non-volatile surface 2〇2 Soap 5 丨 丨 丨 储存 储存All four logic levels in the system are $ to 205, or the non-volatile memory storage system can dynamically form metablocks from one or more of the non-5 planes.

山工、幻中°亥4丁列儲存於一或多個區塊中。舉例而 ;。该仔列可儲存於-控制區塊(諸如,寫入緩衝區塊) 。该寫入緩衝區塊維持於非揮發性記憶體單元陣列中。 ’該寫人緩衝區塊將所接收到之資料緩衝於非揮發 叫己U體儲存系統中。該寫入緩衝區塊充當一臨時緩衝 口為寫入至寫入緩衝區塊之資料稍後被複製至另一區 塊。遠寫入緩衝區塊可橫跨多個邏輯位址。舉例而言,該 寫入緩衝區塊可橫跨整個邏輯位址空間。藉由橫跨整個邏 輯位址空間’該寫入緩衝區塊可儲存將要寫入至遍及非揮 t丨生。己fe體儲存系統的所有邏輯位址及邏輯位址之所有群 "即,所有邏輯群)的資料。換言之,與不同邏輯群相關 、資料了儲存於該寫入緩衝區塊中。請注意,一邏輯群 為具有可等於一元區塊之大小的大小的一群邏輯位址。控 制區塊之第二實例為索引區塊。大體上,索引區塊儲存用 於存取非揮發性記憶體儲存系統内之各個區塊的索引資 兮私 0 — ° °京弓丨資訊可(例如)包括關於各種類型之區塊之有效複 129496.doc -13- 200847162 本的位置的資訊。控制區塊之第三實例為映射區塊。映射 區塊儲存非揮發性記憶體儲存系統中之區塊的映射及指示 疋否擦除每一區塊的資訊。舉例而言,映射區塊可儲存已 擦除區塊之一列位址。控制區塊之第四實例為開機啟動 (boot)區塊。開機啟動區塊儲存映射區塊之當前位址。換 言之,開機啟動區塊儲存對映射區塊之指標。因此,在重 定位映射區塊時,更新儲存於開機啟動區塊中之映射區塊 的當前位址。開機啟動區塊可位於第一可用元區塊中。控 制區塊之第五實例為高速暫存區塊。應瞭解,高速暫存區 塊為資料更新區塊之一形式,其中可以隨機次序及以任何 量之重複來更新邏輯區段。高速暫存區塊藉由寫入命令來 建立,其中所欲邏輯區段不端接或越過一實體頁邊界。由 於非揮發性記憶體儲存系統可能不能夠程式化部分頁,所 以一頁之區段可臨時儲存於高速暫存區塊中。非揮發性記 憶體儲存系統將該頁之區段聚積於高速暫存區塊中,直至 該頁之所有區段填充有來自各種寫入命令之新資料為止。 非揮發性記憶體儲存系統接著在一程式操作中將來自高速 暫存區塊之整個頁(例如,八個區段之新資料)複製至另一 區塊(諸如,更新區塊)。 圖4為記憶體單元之頁的簡化方塊圖。可將每一區塊(諸 如,區塊210至213)進一步分成記憶體單元之頁。結果, 符列可覆蓋記憶體單元之一或多個頁。如圖4所示,將每 區塊210、211、212或213分成八個頁p〇至p7。或者,在 母一區塊210、211、212或213内可存在16個、32個,或更 129496.doc -14 - 200847162 夕的口己L體單元之頁。為增加非揮發性記憶體儲存系統之 操作並α性’可將兩個或兩個以上區塊内的頁邏輯上鍵接 成元頁。例如,一元頁可由一頁(諸如,P1)形成、由四個 區塊21G至213中之每-者形成。—元頁可延展越過非揮發 性§己憶體儲存系绩內> %i I 〇·、 , 死内之所有千面,或非揮發性記憶體儲存 系統可由-或多個不同平面中之一或多個獨立區塊中之一 或多個頁動態地形成元頁。 圖5為記憶體單元之區段的簡化方塊圖。可將一頁進一 v刀成4夕個區段。結果’佇列可覆蓋記憶體單元之一 或多個區段。每一頁中之資料量可為整數個一或多個區段 資料/、中母區段可儲存512個位元組之資料。圖5展 示分成兩個區段502及504之頁5CU。每-區段5〇2或50恃 有大小可為512個位元組之資料5〇6及與該資料相關聯之附 加項資料奶。附加項資料奶之大小可為立元組且可 儲存(例如)在程式化期間由資料506計算出之ECC、盘該資 料相關聯之邏輯位址、已擦除及重新程式化區塊之次數的 計數、控制旗標、操作電|位準,及與該㈣相關聯之其 他資訊。 圖6為根據本發明之—實施例的儲存記憶體操作及與記 憶體操作相關聯之優先級於仔列中的操作之總體概觀的流 程圖。開始於602處,提供一广列 0 致供仔列,且该佇列經組態以儲 存記憶體操作及與該等記憶體操作相關聯之優先級。回應 於一事件,排程-記憶體操作以用於在6〇4處執行,且在 6〇6處將-優先級指派給該記憶體操作。藉由將—優先級 129496.doc -15- 200847162 指派給每一記憶體操作’可排程某些記憶體操作以用於在 其他記憶體操作之前執行。可為不同記憶體操作指派不同 優先級。舉例而言’該等優先級可為兩級高或低優先級。 在另一實例中,該等優先級可包括下表A所示之多個級 _ 另 *J 〇 描述 優先級 Μ〇〇,' ,Ό2” "05, 3或擦除操作麟或在後台操作(在主機閒置週期期間=記j尨 1青除寫入緩衝區塊項。 ~— ----- β除來自寫入緩衝區--- 記憶體 作。排 清注意,在表Α中,具有低優先級 記憶體操作將經排程以用於在具有 ,」、,)< ”〇6”)之記憶體操作之前執行。 '•及數子(例如, 可基於-或多個參數來預定或計算 若非揮發性記憶體儲存系統可校正 元^4 ’ (ECC)且存在七個位元之錯誤 %之錯誤校正瑪 正錯誤之記憶體操作。缺而,若存將向優先級指派给技 個以之錯誤 129496.doc -16· 200847162 可將低優先級指派給校正錯誤之記憶錢作實施例 :’可基於記憶體操作之類型(例如,磨損均句化、讀取 处里廢棄項目收集及其他類型之記憶體操作)來將 優先級指派給記憶體操作。換言之,優先級可表示成 優先級==/(記憶體操作之類型)The mountain work and the illusion are stored in one or more blocks. For example; The queue can be stored in a control block (such as a write buffer block). The write buffer block is maintained in a non-volatile memory cell array. The writer buffer block buffers the received data in a non-volatile U-body storage system. The write buffer block acts as a temporary buffer for the data written to the write buffer block to be later copied to another block. A far write buffer block can span multiple logical addresses. For example, the write buffer block can span the entire logical address space. By writing across the entire logical address space, the write buffer block can be stored to be written to the non-sweep. All the logical addresses of the system and all the groups of the logical addresses "that is, all logical groups). In other words, data associated with different logical groups is stored in the write buffer block. Note that a logical group is a group of logical addresses having a size equal to the size of a unitary block. The second instance of the control block is an index block. In general, the index block stores index information for accessing various blocks in the non-volatile memory storage system. The information may, for example, include an effective complex for various types of blocks. 129496.doc -13- 200847162 Information about the location of this location. The third instance of the control block is a mapped block. The mapping block stores the mapping of the blocks in the non-volatile memory storage system and indicates whether the information of each block is erased. For example, a mapped block can store a column address of an erased block. The fourth example of the control block is the boot block. The boot device block stores the current address of the mapped block. In other words, the boot-up block stores the metrics for the mapped block. Therefore, when the mapping block is relocated, the current address of the mapping block stored in the booting block is updated. The bootable boot block can be located in the first available metablock. The fifth example of a control block is a scratch pad block. It should be understood that the scratch pad block is in the form of one of the data update blocks in which the logical segments can be updated in random order and in any amount of repetition. The scratch pad block is created by a write command in which the desired logical segment is not terminated or crossed over a physical page boundary. Since the non-volatile memory storage system may not be able to program a partial page, a section of a page may be temporarily stored in the scratch pad block. The non-volatile memory storage system accumulates the segments of the page in the scratch pad block until all segments of the page are populated with new data from various write commands. The non-volatile memory storage system then copies the entire page (e.g., new data for eight segments) from the high speed temporary storage block to another block (e.g., update block) in a program operation. 4 is a simplified block diagram of a page of a memory cell. Each block (e.g., blocks 210 through 213) can be further divided into pages of memory cells. As a result, the array can cover one or more pages of the memory unit. As shown in Fig. 4, each block 210, 211, 212 or 213 is divided into eight pages p to p7. Alternatively, there may be a page of 16, 32, or 129496.doc -14 - 200847162 in the parent block 210, 211, 212 or 213. To increase the operation of the non-volatile memory storage system and alphaness, pages within two or more blocks can be logically keyed into a metapage. For example, a unitary page may be formed by one page (such as P1) and formed by each of the four blocks 21G to 213. - The metapage can be extended beyond the non-volatile § memory storage system > %i I 〇·, , all the thousands of faces in the dead, or the non-volatile memory storage system can be - or in multiple different planes One or more of the one or more independent blocks dynamically form a metapage. Figure 5 is a simplified block diagram of a section of a memory cell. You can put a page into a v-cut into a 4th-segment section. The result '伫 column can cover one or more segments of the memory unit. The amount of data in each page can be an integer number of one or more sections of data /, the middle section can store 512 bytes of data. Figure 5 shows a page 5CU divided into two sections 502 and 504. Each section is 5〇2 or 50恃 There are information on the size of 512 bytes, 5〇6, and additional information related to this data. The size of the additional item milk can be a triad and can store, for example, the ECC calculated from the data 506 during the stylization, the logical address associated with the data, the number of erased and reprogrammed blocks. Count, control flag, operating power | level, and other information associated with the (d). Figure 6 is a flow diagram of a general overview of memory memory operations and operations associated with memory cell operations in accordance with an embodiment of the present invention. Beginning at 602, a wide list is provided, and the queue is configured to store memory operations and priorities associated with the memory operations. In response to an event, the schedule-memory operation is performed at 6〇4, and the priority is assigned to the memory operation at 6〇6. Some memory operations can be scheduled for execution by other memory operations by assigning - priority 129496.doc -15-200847162 to each memory operation. Different memory operations can be assigned different priorities. For example, the priorities may be two levels of high or low priority. In another example, the priorities may include multiple levels as shown in Table A below. _ Another *J 〇 describes the priority Μ〇〇, ', Ό 2" "05, 3 or erase operation lin or in the background Operation (during the idle period of the host = remember to write the buffer block item. ~— ----- β except from the write buffer --- memory. Clear the note, in the table The operation with low priority memory will be scheduled for execution before the memory operation with ",,,) < "〇6"). '• and a number (for example, a non-volatile memory storage system correctable element ^4 ' (ECC) can be predetermined or calculated based on - or more parameters and there is an error correction error of seven bits. The memory operation. In the absence, if the priority will be assigned to the priority of the error 129496.doc -16· 200847162 can assign the low priority to the memory of the correction error as an example: 'can be based on memory operation The type (eg, wear-and-sequence, obsolete item collection at the read location, and other types of memory operations) to assign priorities to memory operations. In other words, priority can be expressed as priority ==/ (memory Type of operation)

其中優先級為記憶體操作之類型的函數。舉例而言,一磨 化記憶麟作可指派有或指定成—低優先級。在另 只施例巾’可基於觸發記憶輯作之事件的類型來將優 先級指派給記憶體操作。換言之,優线可表示成 優先級=/(事件之類型) 其中優先級為觸發記憶體操作之事件的類型之函數。一實 J Ί 括將中度優先級指派給由更新區塊中之失敗觸發 的記憶體操作。另一方面,彳向由寫入中止復原觸發之記 憶體操作指派-高優先級。在又一實施例中H級可基 於a fe體操作之類型與觸發記憶體操作之事件之類型的組 合。換言之,優先級可表示成 優先級=/(記憶體操作之類型,事件之類型) 其中優先級為記憶體操作之類型及觸發記憶體操作之事件 之類型的函數。 在將優先級指派給記憶體操作後,在608處將記憶體操 作及優先級儲存於佇列中。此處,該佇列可包括用於記憶 體操作之項、與記憶體操作相關聯之優先級,及與記憶體 操作相關聯之其他資訊,諸如,區塊數目、區段位置、頁 129496.doc -17、 200847162 位置、计數、一區塊内之特定區段,及其他資訊。 仍多看圖6 ’接著在61 〇處執行記憶體操作。應瞭解,可 月b不;^全執行記憶體操作,因為(例如)未分配足夠時間以 凡王地執行記憶體操作。因此,可使記憶體操作之執行延 遲。在一實施例中,如612處所示,執行進程可儲存於佇 列中。執行進程指示已完成之記憶體操作的量。執行進程 ^括與C憶體操作之執行的進度有關的多種資訊。此資訊 可包括執行之點、狀態或階段。舉例而言,所複製之區 ,頁及/或區段的數目,在執行可定相至預定級(例如, 韌體升級之第一、第二或第三級)時記憶體操作之各個級 或階段,及其他資訊。根據儲存於佇列中之執行進程,可 部分地執行記憶體操作。在稍後時間,即使在記憶體操作 段的執行之間發生功率循環’亦可在完成之前再 繼續記憶體操作之執行。 ❿The function whose priority is the type of memory operation. For example, a grinding memory can be assigned or assigned to - low priority. In the other embodiment, the priority can be assigned to the memory operation based on the type of event that triggers the memory compilation. In other words, the priority line can be expressed as priority = / (type of event) where priority is a function of the type of event that triggers the memory operation. A real J assigns a medium priority to a memory operation triggered by a failure in the update block. On the other hand, it is assigned to the high-priority of the memory operation triggered by the write abort recovery. In yet another embodiment, the H level can be based on a combination of the type of a fe operation and the type of event that triggers the memory operation. In other words, the priority can be expressed as priority = / (type of memory operation, type of event) where priority is a function of the type of memory operation and the type of event that triggers the operation of the memory. After the priority is assigned to the memory operation, the memory gymnastics is prioritized and stored in the queue at 608. Here, the queue may include items for memory operations, priorities associated with memory operations, and other information associated with memory operations, such as number of blocks, sector locations, page 129496. Doc -17, 200847162 Location, count, specific sections within a block, and other information. Still look at Figure 6' and then perform the memory operation at 61 。. It should be understood that the memory operation may be performed in full, because (for example) no sufficient time is allocated to perform the memory operation. Therefore, the execution of the memory operation can be delayed. In an embodiment, as shown at 612, the execution process can be stored in a queue. The execution process indicates the amount of memory operations that have been completed. The execution process includes a variety of information related to the progress of the execution of the C memory operation. This information can include the point, status, or stage of execution. For example, the number of replicated regions, pages, and/or segments, at various levels of memory operations when performing phasing to a predetermined level (eg, the first, second, or third level of firmware upgrade) Or stage, and other information. The memory operation can be partially performed according to the execution process stored in the queue. At a later time, even if a power cycle occurs between the execution of the memory segment, the execution of the memory operation can be resumed before completion. ❿

=為根據本發明之—實施例的自㈣讀取記憶體操作 之刼作之總體概觀的流程圖。開始於7〇2處,提供一 列。如上所述,經排程以待執行之記憶體操作相丁 之優先級及/或執行進程館存於該传列中。在7〇6處;= ❹讀取記憶體操作。在初始切揮發性㈣ I 知,可自該仔列讀取非揮發性記憶體儲存系統 = 性記憶體系統不忙於執行其他記憶體操作時,亦可自二! 列讀取非揮發性記憶體料系統。舉例而言,主機允= :定量之時間:意即,—逾時週期)來執行'寫: 例而言,安全數位協定將該時間量限於25〇毫 料 129496.doc 18- 200847162 於該逾時週期。此過剩之時間量(竟 寫入操作之時間量之間的差)可由非 於執行儲存於該佇列中之記憶體操 , 、 卜,在708處自該佇列讀取盥記f咅俨握你 相關聯之優先級 …取,、礼體刼作 ,α 牡Μϋ處’亦可自該佇列讀取與記恃夢 刼作相關聯之執杆推妒如 /…己^體 . 桎。在712處,接著排程一特定記_= is a flow chart of a general overview of the operation of the (four) read memory operation in accordance with an embodiment of the present invention. Start at 7〇2 and provide a column. As described above, the priority of the memory operation to be executed and/or the execution process are scheduled in the hash. At 7〇6; = ❹ read memory operation. In the initial cut volatility (4) I know that the non-volatile memory storage system can be read from the list. = The sexual memory system is not busy performing other memory operations, but also from the second! The column reads the non-volatile memory material system. For example, the host allows =: Quantitative time: meaning, - timeout period to perform 'write: For example, the secure digital agreement limits the amount of time to 25 〇 129496.doc 18- 200847162 Time period. The excess amount of time (the difference between the amount of time written into the operation) may be performed by the memory gymnastics stored in the queue, and at 708, the reading is performed from the queue. Your associated priority...take, ritual, alpha oysters can also be read from the 伫 与 与 与 恃 恃 恃 相关 相关 相关 相关 相关 相关 相关 相关 相关 相关 相关 相关 相关 ... ... ... ... .... At 712, then schedule a specific record _

體刼作以用於執杆。户^ 竹疋忑 在一貝施例中,可基於優先級來排程 。己〖思體細作以用於執行。 丁視執仃進轾而疋,記憶體操 古,仃可為自較早時間開始之執行的再繼續。舉例而 在Λ〜例中,執行進程經組態以定義-執行點。該 執行點為記情强IU ^ νΛ ⑶呆作之别-執行結束時。可自該執行點開 :執仃記憶體操作。換言之,可自該執行點㈣再繼續吃 ^操作之執行。可部分地執行或完全地執行記憶體摔The body is used for the stick. Household ^ Bamboo 疋忑 In a case, it can be scheduled based on priority. It has been carefully designed for execution. Ding Shi insisted on entering and smashing, memory gymnastics, ancient, can be continued since the beginning of the implementation of the earlier. For example, in the example ~, the execution process is configured to define the - execution point. The execution point is a strong IU ^ ν Λ (3) and the end of the execution. It can be opened from this point of execution: the memory operation is performed. In other words, the execution of the operation can be continued from the execution point (4). Partially executed or completely executed memory

入操作之時間量可小 即,逾時週期與執行 揮發性記憶體系統用 作。 。右Ζ分地執行記憶體射,則將執行進程儲存於仔列 中,使侍在稍後時間可再繼續記憶體操作之執行。然而, 若^完全地執行記憶體操作,則可Μ宁列移除或刪:記憶 體操作。#著可根據優先級排帛來自肖列之下—記憶體操 作以用於執行。 雖然已為達成理解之清楚的目的而稍詳細地描述前述實 施例,但該等實施例不限於所提供之細節。存在實施該等 實施例之許多替代方式。因此,所揭示之實施例將被視為 說明性且非限制性的,且該等實施例不限於本文所提供之 細節,而是可在所附申請專利範圍之範疇及等效物内進行 1294%. dOC -19- 200847162 修改。在申請專利範圍中, 宏 _ 、 叫專利範圍中明確地規 & H件及/或操作不暗示任何 【圖式簡單說明】 、呆作-人序。 圖1為根據本發明之一實 ^ %例的非揮發性記憶體儲存系 統之一實例的簡化方塊圖。 圖2為根據本發明之一 由々貝施例的儲存記憶體操作於佇列 甲之刼作的總體概觀之流程圖。The amount of time to enter the operation can be small, that is, the timeout period is used to execute the volatile memory system. . The right side performs the memory shot, and the execution process is stored in the queue so that the waiter can resume the execution of the memory operation at a later time. However, if the memory operation is completely performed, the column can be removed or deleted: the memory operation. #着可排根据 According to the priority level, it is from Xiao Lie - Memory Gymnastics for execution. Although the foregoing embodiments have been described in some detail for the purpose of clarity of understanding, the embodiments are not limited to the details provided. There are many alternative ways of implementing these embodiments. Therefore, the disclosed embodiments are to be considered as illustrative and not limiting, and the embodiments are not limited to the details provided herein %. dOC -19- 200847162 Modified. In the scope of patent application, the macro _, the scope of the patent, and the H and/or operation do not imply any [simplified description], stay-person order. BRIEF DESCRIPTION OF THE DRAWINGS Figure 1 is a simplified block diagram of one example of a non-volatile memory storage system in accordance with one embodiment of the present invention. Figure 2 is a flow diagram of a general overview of the operation of a memory memory operated by a mussel in accordance with one embodiment of the present invention.

圖3為記憶體單元陣列成為平面之組織的簡化方塊圖。 圖4為記憶體單元之頁的簡化方塊圖。 圖5為記憶體單元之區段的簡化方塊圖。 二。為根據本發明之一實施例的儲存記憶體操作及與記 —桑作相關聯之優先級於符列中的操作之總體概 程圖。 :為根據本發明之一實施例的自佇列讀取記憶體操作 操作之總體概觀的流程圖。 【主要元件符號說明】 102 104 106 108 110 112 114 116 非揮發性記憶體儲存系統 主機介面 處理器 έ己憶體介面 記憶體控制器 隨機存取記憶體(RAM) 錯誤校正碼(ECC)電路 唯讀記憶體(ROM) ^9496.d〇c -20- 200847162Figure 3 is a simplified block diagram of the organization of the memory cell array as a plane. 4 is a simplified block diagram of a page of a memory cell. Figure 5 is a simplified block diagram of a section of a memory cell. two. A general overview of the operation of storing memory and the operations associated with the recording in accordance with an embodiment of the present invention. : Flowchart for a general overview of a self-aligned read memory operation operation in accordance with an embodiment of the present invention. [Major component symbol description] 102 104 106 108 110 112 114 116 Non-volatile memory storage system host interface processor έ memory interface controller random access memory (RAM) error correction code (ECC) circuit only Read Memory (ROM) ^9496.d〇c -20- 200847162

118 記憶體 120 陣列邏輯 122 非揮發性記憶體單元陣列 124 匯流排 126 系統匯流排 130 佇列 131 符列 202 平面 203 平面 204 平面 205 平面 210 區塊 211 區塊 212 區塊 213 區塊 220 區塊 221 區塊 222 區塊 223 區塊 501 頁 502 區段 504 區段 505 附加項資料 506 資料P0頁 129496.doc -21 - 200847162 P1 頁 P2 頁 P3 頁 P4 頁 - P5 頁 , P6 頁 P7 頁 129496.doc -22118 Memory 120 Array Logic 122 Non-volatile Memory Cell Array 124 Bus Bar 126 System Bus 130 伫 131 131 Array 202 Plane 203 Plane 204 Plane 205 Plane 210 Block 211 Block 212 Block 213 Block 220 Block 221 Block 222 Block 223 Block 501 Page 502 Section 504 Section 505 Additional Information 506 Data P0 Page 129496.doc -21 - 200847162 P1 Page P2 Page P3 Page P4 Page - P5 Page, P6 Page P7 Page 129496. Doc -22

Claims (1)

200847162 十、申請專利範圍: 1 · 一種用於操作一非揮發性記怜體铗左多从 u篮储存糸統之方法,其包 含: 提供一佇列,該佇列經組態 〜Λ储存與兩種或兩種以上 類型的複數個記憶體操作相 々日關知的該複數個記憶體操 作’該複數個記憶體操作與該非你机^ & 一成非揮發性記憶體儲存系統 之維護相關聯; 排程-記憶體操作以使其回應於一事件而執行;及 儲存該記憶體操作於該佇列中。 2·如請求項1之方法,其進一步包含自$ _ 匕3自δ亥彳丁列碩取該記憶 體操作。 3 ·如請求項丨之方法,其進一步包含: 將優先級指派給該記憶體操作;及 儲存該優先級於該佇列中。 4. 如明求項3之方法’其中基於該記憶體操作之一類型來 指派該優先級。 、 5· ::求項3之方法’其中基於該事件之一類型來指派該 優先級。 6·如請求項1之方法,其進一步包含: 執行該記憶體操作;及 儲存一執行進程於該佇列中。 7·如請求項6之方法,其進一步包含: 若完全執行該記憶體操作,則自該符列删除該記憶體 操作;及 129496.doc 200847162 仔=分地執行該記憶體操作’則館存該執行進程於該 8·如請求項!之方法,其令 體儲存“ 以存於該非揮發性記憶 10 一種:項1之方法其中該佇列儲存於-控制區塊中。 ·:種用於操作一非揮發性記憶體儲存系統之方法,其包 提供-仔列,該符列經組態以儲存與兩種或兩種以上 作Μ::個記憶體操作相關聯的該複數個記憶體操 之維=:記憶體操作與該非揮發性記憶體儲存系統 自該佇列讀取一記憶體操作;及 排程該記憶體操作以用於執行。 11·如請㈣心方法’其令該㈣經組態以儲存與該複數 固屺k體操作相關聯之複數個優先級。 12.如請求項u之方法’其進一步包含自該作列讀取一盥該 :己憶體操作相關聯之優先級,其中基於該優先級排程該 呂己憶體操作以用於執行。 如二求項10之方法,其中該符列經組態以儲存與該複數 個€憶體操作相關聯之複數個執行進程。 14·如請求項13之方法,其進一步包含: 自該佇列讀取一與該記憶體操作相關聯之執行進程, 該執行進程經組態以定義一執行點;及 自该執行點開始執行該記憶體操作。 129496.doc 200847162 15: = :°;方法’其_宁列儲存於該非揮發性記憶 存系2 1G之方去’其中在初始化該非揮發性記憶體儲 '、,、、%,自該佇列讀取該記憶體操作。 17.=:!10之方法,其中在該非揮發性記憶體儲存系統 不繁忙¥,自該佇列讀取該記憶體 ::::r方法,其軸儲存一區塊中。 項〗。之方法,其中該仔列儲存於一寫入緩衝區塊 20.:請求们0之方法,其中該仵列儲存於—開機啟動區塊 2 1 ·如晴求項1 〇之方法 22·如請求項1〇之方法 中。 其中5亥仔列儲存於一映射區塊中。 高速暫存區塊 23.200847162 X. The scope of application for patents: 1 · A method for operating a non-volatile recording body, from the u basket storage system, comprising: providing a queue, the queue is configured to store and Two or more types of memory operations are performed by the plurality of memory operations as of the next day. 'The plurality of memory operations and the non-history machine ^ & a maintenance of the non-volatile memory storage system Associated; a schedule-memory operation to cause it to be executed in response to an event; and storing the memory in the queue. 2. The method of claim 1, further comprising taking the memory operation from $ _ 匕 3 from δ 彳 彳 。. 3. The method of claim 1, further comprising: assigning a priority to the memory operation; and storing the priority in the queue. 4. The method of claim 3, wherein the priority is assigned based on one of the types of memory operations. , 5· :: method of claim 3, wherein the priority is assigned based on one of the types of events. 6. The method of claim 1, further comprising: performing the memory operation; and storing an execution process in the queue. 7. The method of claim 6, further comprising: deleting the memory operation from the register if the memory operation is completely performed; and 129496.doc 200847162 Affecting the memory operation by the location The execution process is in the 8th request item! The method of storing the memory in the non-volatile memory 10: the method of item 1, wherein the queue is stored in the control block. The method for operating a non-volatile memory storage system , the package provides a child column, the character string configured to store the memory of the plurality of memory gymnastics associated with two or more operations: memory operation =: memory operation and the non-volatile The memory storage system reads a memory operation from the queue; and schedules the memory operation for execution. 11·If (4) the heart method 'is let the (4) be configured to store and the complex number k a plurality of priorities associated with the body operation. 12. The method of claim u, further comprising reading from the column: a priority associated with the memory operation, wherein the priority is scheduled based on the priority The method of claim 10, wherein the sequence is configured to store a plurality of execution processes associated with the plurality of memory operations. The method further comprising: reading one from the queue The memory operation is associated with an execution process that is configured to define an execution point; and the memory operation is performed from the execution point. 129496.doc 200847162 15: = :°; method 'its_Ning Stored in the non-volatile memory system 2 1G to 'initiate the non-volatile memory storage', ,,,%, read the memory operation from the queue. 17.=:!10 method, Wherein the non-volatile memory storage system is not busy ¥, the memory is read from the queue::::r method, the axis of which is stored in a block. The method, wherein the column is stored in a Write buffer block 20.: The method of requesting 0, wherein the queue is stored in the booting block 2 1 · If the method is as follows, the method 22 is as in the method of claim 1 其中. The queue is stored in a mapping block. 種用於操作一非揮發性記憶體儲存系 含·· 統之方法,其包 内務操作及 ’該佇列儲 提供一佇列,該佇列經組態以儲存複數個 與該複數個内務操作相關聯之複數個優先級 存於一高速暫存區塊中; 排私一内務操作以使其回應於一事件而執行· 將一優先級指派給該内務操作;及 儲存該内務操作及該優先級於該佇列中。 24·如睛求項23之方法,其進一步包含: 自該佇列讀取該内務操作及該優先級;及 129496.doc 200847162 基於該優先級排程該内務操作以用於執行。 25.如請求項23之方法’其中基於該内務操作之一 派該優先級。 日 26·如請求項23之方法,其中基於續塞| 丞㈣事件之一類型來指派該 優先級。 ^如請求項23之方法’其中該仔列儲存於該非揮發性記憶 體儲存系統内之一非揮發性記憶體單元陣列中。A method for operating a non-volatile memory storage system, the package internal operation and the 'column storage providing a queue, the queue configured to store a plurality of the plurality of housekeeping operations The associated plurality of priorities are stored in a cache pad; the exclusive operation is performed to cause it to be executed in response to an event, a priority is assigned to the housekeeping operation; and the housekeeping operation and the priority are stored Level in this queue. 24. The method of claim 23, further comprising: reading the housekeeping operation and the priority from the queue; and 129496.doc 200847162 scheduling the housekeeping operation for execution based on the priority. 25. The method of claim 23, wherein the priority is assigned based on one of the housekeeping operations. The method of claim 23, wherein the priority is assigned based on one of a type of continuation | (4) event. ^ The method of claim 23, wherein the queue is stored in an array of non-volatile memory cells in the non-volatile memory storage system. 28, 如請求項23之方法’其中該㈣儲存於該非揮發性記憶 體儲存系統内之一隨機存取記憶體中。 29. —種用於操作一非揮發性記憶體儲存系統之方法,其包 含: ^ L 提供一佇列,該佇列經組態以儲存複數個内務操作及 與該複數個内務操作相關聯之複數個優先級,該佇列儲 存於一高速暫存區塊中; 自該佇列讀取一内務操作及一與該内務操作相關聯之 優先級;及 基於該優先級排程該内務操作以用於執行。 3 0. —種非揮發性記憶體儲存系統,其包含: 一非揮發性記憶體單元陣列,其經組態以儲存一符 列’邊符列經組態以儲存與兩種或兩種以上類型的複數 個έ己憶體操作相關聯的該複數個記憶體操作,該複數個 記憶體操作與該非揮發性記憶體儲存系統之維護相關 聯;及 一處理器,其與該非揮發性記憶體單元陣列通信,該 129496.doc 200847162 處理器經組態以 排程一記憶體操作以使其回應於一事件而執行,及 儲存該記憶體操作於該佇列中。 3 1 ·如請求項3〇之非揮發性記憶體儲存系統,其進一步包含 一與該處理器通信之隨機存取記憶體,該隨機存取記憶 體經組態以儲存該佇列。28. The method of claim 23, wherein the (four) is stored in one of the non-volatile memory storage systems. 29. A method for operating a non-volatile memory storage system, comprising: ^L providing a queue configured to store a plurality of housekeeping operations and associated with the plurality of housekeeping operations a plurality of priority levels, the queue being stored in a cache block; reading a house operation and a priority associated with the house operation from the queue; and scheduling the house operation based on the priority Used for execution. A non-volatile memory storage system comprising: a non-volatile memory cell array configured to store a list of 'edge' columns configured to be stored with two or more a plurality of memory operations associated with a plurality of types of memory operations associated with maintenance of the non-volatile memory storage system; and a processor associated with the non-volatile memory Cell array communication, the 129496.doc 200847162 processor is configured to schedule a memory operation to cause it to execute in response to an event, and to store the memory in the queue. 3 1 - The non-volatile memory storage system of claim 3, further comprising a random access memory in communication with the processor, the random access memory configured to store the queue. 如請求項30之非揮發性記憶體儲存系統,其中該處理器 經進一步組態以自該佇列讀取該記憶體操作。 如請求項30之非揮發性記憶體儲存系統,其中該處理哭 經進一步組態以: 將一優先級指派給該記憶體操作;及 儲存該優先級於該 宁列中。 34.如請求項33之非揮發性記憶體儲存系統,其中該優先級 係基於該記憶體操作之一類型來指派。A non-volatile memory storage system as in claim 30, wherein the processor is further configured to read the memory operation from the queue. The non-volatile memory storage system of claim 30, wherein the processing cry is further configured to: assign a priority to the memory operation; and store the priority in the column. 34. The non-volatile memory storage system of claim 33, wherein the priority is assigned based on one of the types of memory operations. 35·如請求項33之非揮發性記憶體儲存系統,其中該優先級 係基於該事件之一類型來指派。 其中該處理器 其中該處理器 36·如請求項30之非揮發性記憶體儲存系統, 經進一步組態以: 執行該記憶體操作;及 儲存一執行進程於該仔列中。 37·如請求項36之非揮發性記憶體儲存系統 經進一步組態以: 若完全執行該記憶體操作, 操作;及 則自該佇列刪除該記憶體 129496.doc 200847162 若部分地執行該記憶體操作,則儲存該執行進程於該 分列中。 3^請求項3〇之非揮發性記憶體儲存系統,其中該仔列儲 存於一控制區塊中。 39· —種非揮發性記憶體儲存系統,其包含: 一隨機存取記憶體,其經組態以料—仔列,該仔列 經組態以儲存與兩種或兩種以上類型的複數個記憶體操 作相關聯的該複數個記憶體操作,該複數個記憶體操作 與該非揮發性記憶體儲存系統之維護相關聯;及 -處理器’其與該隨機存取記憶體通信,該處理器經 組態以 自該佇列讀取一記憶體操作,及 排程該記憶體操作以用於執行。 40. 如請求項39之非揮發性記憶體儲存系統,其進一步包含 -與該處理器通信之非揮發性記憶體單元陣列,該非揮 發性$憶體單元陣列經組態以儲存該佇列。 41. 如請求項39之非揮發性記憶體儲存系統,其中該仔列經 進-步組態以儲存與該複數個記憶體操作相關聯之複數 個優先級’且其中該處理器經進-步組態以自該仵列讀 取:與該記憶體操作相關聯之優先級,其中該記憶體操 作係基於該優先級排程以用於執行。 42. 如請求項39之非揮發性記憶體儲存系統,其中在初始化 該非揮發性記憶體儲存系統時,該記憶體操作係自該符 列讀取。 129496.doc 200847162 43·如請求項39之非揮發性記憶體儲存系統,其中在該非揮 發性記憶體儲存系統不繁忙時,該記憶體操作係自該仔 列讀取。 44.如請求項39之非揮發性記憶體儲存系統,其中該佇列經 進一步組態以儲存與該複數個記憶體操作相關聯之複數 個執行進私,且其中該處理器經進_步組態以自該符列 讀取一與該記憶體操作相關聯之執行進程。 45·如請求項44之非揮發性記憶體儲存系統,其中該執行進 程經組態以定義一執行點,且其中該處理器經進一步組 悲以自該執行點開始執行該記憶體操作。 46·如請求項39之非揮發性記憶體儲存系統,其中該佇列儲 存於一索引區塊中。 47. 如請求項39之非揮發性記憶體儲存系統,其中該佇列儲 存於一寫入緩衝區塊中。 48. 如請求項39之非揮發性記憶體儲存系統,其中該佇列儲 存於一開機啟動區塊中。 49·如明求項39之非揮發性記憶體儲存系統,其中該佇列儲 存於一映射區塊中。 50·如請求項39之非揮發性記憶體儲存系統,其中該佇列儲 存於一高速暫存區塊中。 51. —種非揮發性記憶體儲存系統,其包含: 一隨機存取記憶體,其經組態以儲存一佇列,該佇列 經組態以儲存複數個内務操作及與該複數個内務操作相 關聯之複數個優先級,該複數個内務操作與兩種或兩種 129496.doc 200847162 以上類型的該複數個内務操作相關聯;及 一處理器,其與該非揮發性記憶體單元陣列通信,該 處理器經組態以 排程一内務操作以使其回應於一事件而執行, 將一優先級指派給該内務操作,及 儲存該内務操作及該優先級於該佇列中。 52·如請求項5 1之非揮發性記憶體儲存系統,其中該處理器 經進一步組態以:35. The non-volatile memory storage system of claim 33, wherein the priority is assigned based on one of the types of events. Wherein the processor, wherein the processor 36, such as the non-volatile memory storage system of claim 30, is further configured to: perform the memory operation; and store an execution process in the queue. 37. The non-volatile memory storage system of claim 36 is further configured to: if the memory operation is performed entirely, the operation; and the memory is deleted from the queue 129496.doc 200847162 if the memory is partially executed The body operation stores the execution process in the column. 3^ The non-volatile memory storage system of claim 3, wherein the queue is stored in a control block. 39. A non-volatile memory storage system, comprising: a random access memory configured to be a material-care column configured to store complex numbers of two or more types The plurality of memory operations associated with the memory operation, the plurality of memory operations being associated with maintenance of the non-volatile memory storage system; and the processor 'communicating with the random access memory, the processing The device is configured to read a memory operation from the queue and schedule the memory operation for execution. 40. The non-volatile memory storage system of claim 39, further comprising - an array of non-volatile memory cells in communication with the processor, the non-volatile $ memory cell array configured to store the queue. 41. The non-volatile memory storage system of claim 39, wherein the queue is further configured to store a plurality of priorities associated with the plurality of memory operations and wherein the processor is advanced Step configuration to read from the queue: a priority associated with the memory operation, wherein the memory operation is based on the priority schedule for execution. 42. The non-volatile memory storage system of claim 39, wherein the memory operation is read from the array when the non-volatile memory storage system is initialized. The non-volatile memory storage system of claim 39, wherein the memory operation is read from the slave when the non-volatile memory storage system is not busy. 44. The non-volatile memory storage system of claim 39, wherein the queue is further configured to store a plurality of executions associated with the plurality of memory operations, and wherein the processor The configuration reads an execution process associated with the memory operation from the character string. 45. The non-volatile memory storage system of claim 44, wherein the execution process is configured to define an execution point, and wherein the processor is further responsive to perform the memory operation from the execution point. 46. The non-volatile memory storage system of claim 39, wherein the queue is stored in an index block. 47. The non-volatile memory storage system of claim 39, wherein the queue is stored in a write buffer block. 48. The non-volatile memory storage system of claim 39, wherein the queue is stored in a boot-up block. 49. The non-volatile memory storage system of claim 39, wherein the queue is stored in a mapping block. 50. The non-volatile memory storage system of claim 39, wherein the queue is stored in a high speed temporary storage block. 51. A non-volatile memory storage system, comprising: a random access memory configured to store a queue configured to store a plurality of housekeeping operations and the plurality of housekeeping Manipulating a plurality of priority operations associated with the plurality of two or two types of overhead operations of the type 129496.doc 200847162; and a processor communicating with the non-volatile memory unit array The processor is configured to schedule a housekeeping operation to cause it to execute in response to an event, assign a priority to the housekeeping operation, and store the housekeeping operation and the priority in the queue. 52. The non-volatile memory storage system of claim 5, wherein the processor is further configured to: 自該佇列讀取該内務操作及該優先級;及 基於該優先級排程該内務操作以用於執行。 53·如請求項51之非揮發性記憶體儲存系統,其中該優先級 係基於該内務操作之一類型來指派。 54.如請求項5丨之非揮發性記憶體儲存系統,其中該優先級 係基於該事件之一類型來指派。 55· —種非揮發性記憶體儲存系統,其包含: 一非揮發性記憶體單元陣列,其經組態以儲存一佇 列,該佇列經組態以儲存複數個内務操作及與該複數= 内務操作相關聯之複數個優先級,該佇列儲存於一高速 暫存區塊中;及 ' 一處理器,其與該非揮發性記憶體單元陣列通信,該 處理器經組態以 Λ 關聯 自該仔列讀取-内務操作及—與該内務操作相 之優先級,及 基於該優先級排程該内務操作以用於執行。 129496.docReading the housekeeping operation and the priority from the queue; and scheduling the housekeeping operation for execution based on the priority. 53. The non-volatile memory storage system of claim 51, wherein the priority is assigned based on one of the types of overhead operations. 54. The non-volatile memory storage system of claim 5, wherein the priority is assigned based on one of the types of events. 55. A non-volatile memory storage system, comprising: a non-volatile memory cell array configured to store a queue configured to store a plurality of house operations and with the plurality = a plurality of priorities associated with the housekeeping operation, the queue being stored in a cache block; and 'a processor communicating with the array of non-volatile memory cells, the processor being configured to associate The read-to-house operation and the priority from the housekeeping operation are prioritized, and the housekeeping operation is scheduled for execution based on the priority. 129496.doc
TW97108560A 2007-03-21 2008-03-11 Methods for storing memory operations in a queue TWI380303B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/726,648 US7987332B2 (en) 2007-03-21 2007-03-21 Methods for storing memory operations in a queue
US11/726,646 US20080235480A1 (en) 2007-03-21 2007-03-21 Systems for storing memory operations in a queue

Publications (2)

Publication Number Publication Date
TW200847162A true TW200847162A (en) 2008-12-01
TWI380303B TWI380303B (en) 2012-12-21

Family

ID=39619215

Family Applications (1)

Application Number Title Priority Date Filing Date
TW97108560A TWI380303B (en) 2007-03-21 2008-03-11 Methods for storing memory operations in a queue

Country Status (2)

Country Link
TW (1) TWI380303B (en)
WO (1) WO2008115720A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI451435B (en) * 2010-10-08 2014-09-01 Phison Electronics Corp Non-volatile memory storage apparatus, memory controller and data storage method
TWI718635B (en) * 2019-03-04 2021-02-11 慧榮科技股份有限公司 Unbalanced plane management method, associated data storage device and controller thereof
US11210005B2 (en) 2019-03-04 2021-12-28 Silicon Motion, Inc. Unbalanced plane management method, associated data storage device and controller thereof

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7987332B2 (en) 2007-03-21 2011-07-26 Sandisk Technologies Inc. Methods for storing memory operations in a queue
US8504784B2 (en) 2007-06-27 2013-08-06 Sandisk Technologies Inc. Scheduling methods of phased garbage collection and housekeeping operations in a flash memory system
US10552045B2 (en) 2016-11-16 2020-02-04 Sandisk Technologies Llc Storage operation queue
CN111708495A (en) * 2020-06-19 2020-09-25 深圳前海微众银行股份有限公司 Annular queue storage method and device, computing equipment and storage medium

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7089349B2 (en) * 2003-10-28 2006-08-08 Sandisk Corporation Internal maintenance schedule request for non-volatile memory system
US8244958B2 (en) * 2005-05-09 2012-08-14 Sandisk Il Ltd. Method and system for facilitating fast wake-up of a flash memory system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI451435B (en) * 2010-10-08 2014-09-01 Phison Electronics Corp Non-volatile memory storage apparatus, memory controller and data storage method
TWI718635B (en) * 2019-03-04 2021-02-11 慧榮科技股份有限公司 Unbalanced plane management method, associated data storage device and controller thereof
US11210005B2 (en) 2019-03-04 2021-12-28 Silicon Motion, Inc. Unbalanced plane management method, associated data storage device and controller thereof
TWI752784B (en) * 2019-03-04 2022-01-11 慧榮科技股份有限公司 Unbalanced plane management method, associated data storage device and controller thereof
US11809723B2 (en) 2019-03-04 2023-11-07 Silicon Motion, Inc. Unbalanced plane management method, associated data storage device and controller thereof

Also Published As

Publication number Publication date
TWI380303B (en) 2012-12-21
WO2008115720A1 (en) 2008-09-25

Similar Documents

Publication Publication Date Title
TWI653533B (en) Data storage device and method of operation thereof
US7441071B2 (en) Memory systems for phased garbage collection using phased garbage collection block or scratch pad block as a buffer
US7444462B2 (en) Methods for phased garbage collection using phased garbage collection block or scratch pad block as a buffer
US7987332B2 (en) Methods for storing memory operations in a queue
US10802733B2 (en) Methods and apparatus for configuring storage tiers within SSDs
TWI503822B (en) Efficient buffering for a system having non-volatile memory
US7464216B2 (en) Method for phased garbage collection with state indicators
US7444463B2 (en) System for phased garbage collection with state indicators
TWI409633B (en) Flash memory storage device, controller thereof, and method for programming data
JP4362549B1 (en) Gradual garbage collection
TWI418980B (en) Memory controller, method for formatting a number of memory arrays and a solid state drive in a memory system, and a solid state memory system
TWI399643B (en) Flash memory storage system and controller and data writing method thereof
US20080235480A1 (en) Systems for storing memory operations in a queue
JP7353934B2 (en) Memory system and control method
TW200847162A (en) Methods for storing memory operations in a queue
TW201227506A (en) Controller and method for performing background operations
TW200928736A (en) A controller for one type of NAND flash memory for emulating another type of NAND flash memory
TWI446349B (en) Non-volatile memory access method and system, and non-volatile memory controller
JP2008524705A (en) Scratch pad block
US20080162787A1 (en) System for block relinking
TW201706848A (en) Valid data merging method, memory controller and memory storage apparatus
TW201111987A (en) Memory system
US8914587B2 (en) Multi-threaded memory operation using block write interruption after a number or threshold of pages have been written in order to service another request
CN114063893A (en) Data storage device and data processing method
TWI540428B (en) Data writing method, memory controller and memory storage apparatus

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees