CN104750619A - 数据储存装置以及快闪存储器控制方法 - Google Patents
数据储存装置以及快闪存储器控制方法 Download PDFInfo
- Publication number
- CN104750619A CN104750619A CN201410743192.5A CN201410743192A CN104750619A CN 104750619 A CN104750619 A CN 104750619A CN 201410743192 A CN201410743192 A CN 201410743192A CN 104750619 A CN104750619 A CN 104750619A
- Authority
- CN
- China
- Prior art keywords
- mapping table
- address mapping
- physics
- logical
- logical address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1072—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in multilevel memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1405—Saving, restoring, recovering or retrying at machine instruction level
- G06F11/141—Saving, restoring, recovering or retrying at machine instruction level for bus or memory accesses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1435—Saving, restoring, recovering or retrying at system level using file system or storage system metadata
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
-
- 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/0604—Improving or facilitating administration, e.g. storage management
-
- 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/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- 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/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
-
- 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/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- 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/60—Details of cache memory
-
- 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/7201—Logical to physical mapping or translation of blocks or pages
-
- 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/7202—Allocation control and policies
-
- 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/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
-
- 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/7209—Validity control, e.g. using flags, time stamps or sequence numbers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/56—Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
- G11C2211/564—Miscellaneous aspects
- G11C2211/5641—Multilevel memory having cells with different number of storage levels
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明揭示快闪存储器所实现的数据储存装置以及快闪存储器控制技术,其中是分段将一物理区块所对应的物理-逻辑地址映射资讯封存至快闪存储器。一微控制器是设置来规划该快闪存储器提供一第一数据接收区块。在该第一数据接收区块上的一第一写入操作以及一第二写入操作之间,该微控制器基于一第一物理-逻辑映射表的仅部分空间更新一逻辑-物理地址映射表。该逻辑-物理地址映射表是维护于该快闪存储器中。该第一物理-逻辑地址映射表是建立于随机存取存储器中,负责记录一个物理区块的物理地址所对应的逻辑地址。
Description
技术领域
本发明有关于快闪存储器(flash memory)实现的数据储存装置以及快闪存储器控制方法。
背景技术
现今数据储存装置常以快闪存储器(flash memory)为储存媒体。例如,快闪存储器常用作记忆卡(memory card)、通用串行汇流排闪存装置(USB flash device)、固态硬碟(SSD)…等产品。另外有一种应用是采多芯片封装、将一与非门型快闪存储器与其控制芯片包装在同一封装中─称为嵌入式快闪存储器模组(如eMMC)。
快闪存储器的实体空间通常包括多个物理区块(blocks)。各物理区块包括多个物理页(pages)。针对快闪存储器而设计的抹除操作须以物理区块为抹除单位,一物理区块接着一物理区块地释放储存空间。为了方便管理快闪存储器,各物理区块的物理-逻辑地址映射资讯动态收集于一挥发式存储器(例如,一静态随机存取存储器(SRAM))。传统技术中,针对一个完整物理区块动态收集到的物理-逻辑地址映射资讯是一次性地上传至该快闪存储器作非挥发性储存。一个完整物理区块的物理-逻辑地址映射资讯的上传非常耗时。
发明内容
本发明揭示快闪存储器所实现的数据储存装置以及快闪存储器控制方法,是分段将一物理区块所对应的物理-逻辑地址映射资讯上传至快闪存储器。
根据本发明一种实施方式所实现的数据储存装置包括一快闪存储器以及一控制单元。该快闪存储器是划分为多个物理区块。各物理区块包括多个物理页。该控制单元耦接该快闪存储器至一主机,且包括一微控制器以及一随机存取存储器。该微控制器是运作来配置该快闪存储器的这些物理区块其一为一第一数据接收区块。在该第一数据接收区块上的一第一写入操作以及一第二写入操作之间,该微控制器基于一第一物理-逻辑映射表的仅部分空间更新一逻辑-物理地址映射表。该逻辑-物理地址映射表是维护于该快闪存储器中。该第一物理-逻辑地址映射表是建立于该随机存取存储器上,记载一物理区块的物理页所对应的逻辑页。
根据本发明一种实施方式所实现的一快闪存储器控制方法包括以下步骤:配置一快闪存储器的多个物理区块其一为一第一数据接收区块,各物理区块包括多个物理页;并且在该第一数据接收区块上一第一写入操作以及一第二写入操作之间,根据一第一物理-逻辑地址映射表的仅部分内容更新一逻辑-物理地址映射表。该逻辑-物理地址映射表维护于该快闪存储器之上。该第一物理-逻辑地址映射表建立于该随机存取存储器上,记录一物理区块的逻辑地址所对应的物理地址。
下文特举实施例,并配合附图,详细说明本发明内容。
附图说明
图1图解了一快闪存储器100的储存空间规划;
图2为方块图,根据本发明一种实施方式实现一数据储存装置200,其中显示主机202以及快闪存储器204之间的映射资讯是如何建立且动态更新;
图3根据本发明一种实施方式图解了如此在区块内写入操作之间执行的局部F2HH2F封存,其中该物理-逻辑地址映射表F2H是根据该数据接收区块214上的写入操作建立于该随机存取存储器222上;
图4根据本发明另一种实施方式图解了如此在区块内写入操作之间执行的局部F2HH2F封存,其中该物理-逻辑地址映射表F2H是根据该数据接收区块214上的写入操作建立于该随机存取存储器222上;
图5根据本发明另一种实施方式图解了如此在区块内写入操作之间执行的局部F2HH2F封存,其中上述物理-逻辑地址映射表F2H是针对表格过期区块218建立于该随机存取存储器222中;
图6说明了两种不同型态写入操作所对应物理区块规划以及映射资讯更新。
符号说明
100~快闪存储器;102~物理页;
104、106、108以及110~物理区段;
200~数据储存装置;202~主机;
204~快闪存储器;206~控制单元;
208~系统内程序区块;210~系统资讯区块;
212~闲置区块;
214、214_1、214_2~数据接收区块;
216~数据集合;
218、218_1、218_2~表格过期区块;
220~微控制器;222~随机存取存储器;
224~只读存储器;
302、306、310以及314~各为32个物理页;
304、308、312以及316~对应302、306、310以及314的映射资讯;
402~多个物理页;404~一串4K尺寸数据;
406、408、410、412~各自为4K尺寸数据;
414、416、418、420~物理-逻辑地址映射资讯;
422~区域;
502、504、506、508~物理-逻辑地址映射资讯;
510、512、514、516~储存空间;
BLK1、BLK2…BLKN…~物理区块;
F2H、F2H1、F2H2~物理-逻辑地址映射表;
H2F~逻辑-物理地址映射表;
Hm(LBAk0~LBAk0+7)、Hm+1(LBAk1~LBAk1+7)、Hm+2(LBAk2~LBAk2+7)、Hm+3(LBAk3~LBAk3+7)~主机页。
具体实施方式
以下叙述列举本发明的多种实施例。以下叙述介绍本发明的基本概念,且并非意图限制本发明内容。实际发明范围应依照权利要求书界定。
图1图解了一快闪存储器100的储存空间规划。快闪存储器100所提供的储存空间划分为多个物理区块(blocks)BLK1、BLK2…BLKN…等。各物理区块包括多物理页(pages)。各物理页包括多物理区段(sectors)。例如,物理区块BLKN上的物理页102包括四个物理区段104、106、108以及110。若各物理区段配置储存一主机页的使用者数据(对应一串逻辑地址,如LBAk~LBAk+7),各物理页是配置给四个主机页使用。例如,物理区段104、106、108以及110分别对应主机页Hm(即,LBAk0~LBAk0+7)、Hm+1(即,LBAk1~LBAk1+7)、Hm+2(即,LBAk2~LBAk2+7)、Hm+3(即,LBAk3~LBAk3+7)。若一物理区块包括128个物理页,则有128x4个主机页对应一物理区块的128x4个物理区段。针对各物理区块,128x4个物理区段以及128x4个主机页之间的映射资讯需记录下来,作储存空间管理。
图2为方块图,根据本发明一种实施方式实现一数据储存装置200,其中显示主机202以及快闪存储器204之间的映射资讯是如何建立且动态更新。数据储存装置200除了包括快闪存储器204、还包括一控制单元206。
快闪存储器204的物理区块是配置作多种用途。部分物理区块208是储存系统内程序(in-system programs,简称ISPs)。部分物理区块210是储存系统资讯。部分物理区块212为闲置物理区块。配置自该些闲置区块212的一数据接收区块214则是负责接收写入数据,将推入数据集合216为一数据区块。在另外一种实施方式中,数据接收区块214的映射资讯可能正确更新在随机存取存储器222上,但在快闪存储器204上已过时;参考虚线标示,如此数据接收区块214可先标示为表格过期区块218,待映射表更新完成,方自表格过期区块218改标示为数据区块,推入数据集合216中。快闪存储器204可还包括未作任何配置使用的物理区块(freeblocks,未显示于图示中)。
控制单元206是耦接该快闪存储器204至主机202,且包括一微控制器220、一随机存取存储器222以及一只读存储器224。只读程序码是储存于只读存储器224中。微控制器220包括执行该只读存储器224内的只读程序码或/以及该快闪存储器204的该些物理区块208内的系统内程序码,据以操作该快闪存储器204。微控制器220是运作来实现该快闪存储器204上的物理区块配置(参考图2),在该随机存取存储器222上建立物理-逻辑地址映射表F2H,以及在该快闪存储器204上维护一逻辑-物理位置映射表H2F(例如,记录在系统资讯物理区块210中)。该物理-逻辑地址映射表F2H是建立在该随机存取存储器222上,以动态纪录该数据接收区块214(或该表格过期区块218)的物理地址所对应的逻辑地址。不同于将物理-逻辑地址映射表F2H完整地一口气用来更新该逻辑-物理地址映射表H2F,微控制器220是运作来在该数据接收区块214上两个写入操作之间,仅基于该物理-逻辑地址映射表F2H局部内容更新该逻辑-物理地址映射表H2F。基于该物理-逻辑地址映射表F2H而对该逻辑-物理地址映射表H2F所作的更新动作可称为“F2H H2F更新/封存”。微控制器220是运作来在区块内写入操作之间(run-time,在数据接收区块214两个写入操作之间)执行局部F2H H2F封存(即,仅封存该物理-逻辑地址映射表F2H局部内容)─将显著改善数据储存装置200的系统效能。
图3根据本发明一种实施方式图解如此在区块内写入操作之间执行的局部F2H H2F封存,其中该物理-逻辑地址映射表F2H是根据该数据接收区块214上的写入操作建立于该随机存取存储器222上。图2控制器220是运作来在写入特定尺寸的使用者数据(例如,32个物理页,小于该数据接收区块214的完整尺寸(128个物理页))至该数据接收区块214后,封存对应该特定尺寸使用者数据的该段物理-逻辑地址映射表F2H至该快闪存储器204上的该逻辑-物理地址映射表H2F。如图所示,物理-逻辑地址映射资讯304是基于32个物理页302的写入操作产生,用于组成该随机存取存储器222上的物理-逻辑地址映射表F2H。上述32个物理页302的写入操作完成后,快闪存储器204上的逻辑-物理地址映射表H2F是随后根据上述物理-逻辑地址映射资讯304作更新。上述物理-逻辑地址映射资讯304即物理-逻辑地址映射表F2H中对应上述32个物理页302的段落。类似地,物理-逻辑地址映射资讯308是基于32个物理页306的写入操作产生,用于组成该随机存取存储器222上的物理-逻辑地址映射表F2H。上述32个物理页306的写入操作完成后,快闪存储器204上的逻辑-物理地址映射表H2F是随后根据上述物理-逻辑地址映射资讯308作更新。类似地,物理-逻辑地址映射资讯312是基于32个物理页310的写入操作产生,用于组成该随机存取存储器222上的物理-逻辑地址映射表F2H。上述32个物理页310的写入操作完成后,快闪存储器204上的逻辑-物理地址映射表H2F是随后根据上述物理-逻辑地址映射资讯312作更新。至于尚未填满的32个物理页314,其物理-逻辑地址映射资讯316同样尚未完全建立。因此,快闪存储器204上的逻辑-物理地址映射表H2F尚未基于该段物理-逻辑地址映射资讯316作更新。图2的微控制器220可还运作来以一指标标示该段物理-逻辑地址映射资讯316,以标示尚未封存至该快闪存储器204的该段映射资讯。因此,面对搜寻该段未封存映射资讯的需求时,微控制器220是即刻根据上述指标寻得该段物理-逻辑地址映射资讯316,相当省时,且大幅缩小未封存的映射资讯的搜寻区域。
图4根据本发明另一种实施方式图解如此在区块内写入操作之间执行的局部F2H H2F封存,其中该物理-逻辑地址映射表F2H是根据该数据接收区块214上的写入操作建立于该随机存取存储器222上。如此在区块内写入操作之间执行的局部F2H H2F封存是由一连串短于一物理页的使用者数据触发。如图所示,在一系列物理页402后,一连串的短数据404、406~412(一连串4K尺寸的数据)写入该数据接收区块214。物理-逻辑地址映射资讯F2H是根据该数据接收区块214的写入操作建立于该物理-逻辑地址映射表F2H。例如,物理-逻辑地址映射资讯414~420是对应多个物理页402以及该串4K尺寸数据404形成,而区域422内的物理-逻辑映射资讯是针对该串4K尺寸数据406~412形成。在感测到该串4K尺寸数据404的写入操作时,图2微控制器220是于该数据接收区块214接续的写入操作之间基于该物理-逻辑地址映射表F2H更新该逻辑-物理地址映射表H2F。在4K尺寸数据406写入该数据接收区块214之前,该逻辑-物理地址映射表H2F是根据该物理-逻辑地址映射资讯414更新。在4K尺寸数据406以及4K尺寸数据408的写入操作之间,逻辑-物理地址映射表H2F是根据该物理-逻辑地址映射资讯416更新。在4K尺寸数据408以及4K尺寸数据410的写入操作之间,逻辑-物理地址映射表H2F是根据该物理-逻辑地址映射资讯418更新。在4K尺寸数据410以及4K尺寸数据412的写入操作之间,逻辑-物理地址映射表H2F是根据该物理-逻辑地址映射资讯420更新。图2的微控制器220还可运作来以一指标标示储存空间422内剩余的物理-逻辑地址映射资讯(即,尚未封存的映射资讯)。因此,面对搜寻该段未封存的映射资讯的需求时,微控制器220即刻根据上述指标寻得储存空间422,相当省时,且大幅缩小未封存的映射资讯的搜寻区域。
图5根据本发明另一种实施方式图解如此在区块内写入操作之间执行的局部F2HH2F封存,其中上述物理-逻辑地址映射表F2H是针对表格过期区块218建立于该随机存取存储器222中。
在一种实施方式中,图的微控制器220可设置来在该表格过期区块218写满时令该快闪存储器204配置提供上述数据接收区块214。在此例中,微控制器220可设置来在该数据接收区块214的写入操作间根据该物理-逻辑地址映射表F2H更新上述逻辑-物理映射表H2F。
在另一实施方式中,表格过期区块218的写入操作是曾被非预期掉电事件打断,图2的微控制器220是运作来在一复电程序中配置该快闪存储器204提供上述数据接收区块214。在此实施例中,微控制器220是运作于该复电程序修复该物理-逻辑地址映射表格F2H,并在该数据接收区块214的写入操作之间将修复后的该物理-逻辑地址映射表格F2H封存至该逻辑-物理地址映射表H2F。
在图5,储存空间510的写入操作以及储存空间512的写入操作间隔是长于该数据储存装置200的负荷警示时间(time out period)两倍。在储存空间510的写入操作以及储存空间512的写入操作之间,该微控制器220先基于该物理-逻辑地址映射资讯502更新该逻辑-物理地址映射表H2F,再基于该物理-逻辑地址映射资讯504更新该逻辑-物理地址映射表H2F。至于储存空间512的写入操作以及储存空间514的写入操作间隔则是较该数据储存装置200的负荷警示时间的两倍短。在储存空间512的写入操作以及储存空间514的写入操作之间,该微控制器220是基于该物理-逻辑地址映射资讯506更新该逻辑-物理地址映射表H2F。至于储存空间514的写入操作以及储存空间516的写入操作间隔同样是较该数据储存装置200的负荷警示时间的两倍短。在储存空间514的写入操作以及储存空间516的写入操作之间,该微控制器220是基于该物理-逻辑地址映射资讯508更新该逻辑-物理地址映射表H2F。使用者数据接收以及映射资讯封存是交错实行。此外,更有一指标可设计来标示出尚未封存至该逻辑-物理地址映射表H2F的物理-逻辑地址映射资讯。
在某些实施方式中,主机202下达的写入操作有两种分类。例如,串行数据以及零散数据可分开写入该快闪存储器204。图6图解针对以上两种写入操作而设计物理区块配置以及映射资讯更新。数据接收区块214_1以及表格过期区块218_1提供来写入串行数据,数据接收区块214_2以及表格过期区块218_2提供来写入零散数据。对应表格过期区块218_1的物理-逻辑地址映射记录于物理-逻辑地址映射表F2H1。对应表格过期区块218_2的物理-逻辑地址映射记录于物理-逻辑地址映射表F2H2。
在一种实施方式中,图2微控制器220是运作来在该表格过期区块218_1满载时,配置该快闪存储器204提供该数据接收区块214_1。微控制器220在该数据接收区块214_1的写入操作之间,穿插将该物理-地址逻辑映射表F2H1封存至该逻辑-物理地址映射表H2F。微控制器220在该数据接收区块214_2的写入操作之间,穿插将该物理-地址逻辑映射表F2H2封存至该逻辑-物理地址映射表H2F。
在另一种实施方式中,若表格过期区块218_1的写入操作因非预期掉电事件中断,图2该微控制器220在一复电程序是运作来配置该快闪存储器204提供上述数据接收区块214_1。该微控制器220是运作来在该复电程序修复该物理-逻辑地址映射表F2H1。该微控制器220会在该数据写入区块214_1的写入操作间,穿插将修复后的物理-逻辑地址映射表F2H1封存至该逻辑-物理地址映射表H2F。若表格过期区块218_2的写入操作因非预期掉电事件中断,图2该微控制器220在一复电程序是运作来配置该快闪存储器204提供上述数据接收区块214_2。该微控制器220是运作来在该复电程序修复该物理-逻辑地址映射表F2H2。该微控制器220会在该数据写入区块214_2的写入操作间,穿插将修复后的物理-逻辑地址映射表F2H2封存至该逻辑-物理地址映射表H2F。
其他采用上述概念控制一快闪存储器的技术都属于本发明所欲保护的范围。基于以上技术内容,本发明更涉及快闪存储器的控制方法,不限定以特定架构的控制单元实现。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何熟悉本技术领域者,在不脱离本发明的精神和范围内,当可做些许更动与润饰,因此本发明的保护范围当由权利要求书界定为准。
Claims (18)
1.一种数据储存装置,包括:
一快闪存储器,划分为多个物理区块,且上述物理区块各自包括多个物理页;以及
一控制单元,耦接该快闪存储器至一主机,且包括一微控制器以及一随机存取存储器;
其中:
该微控制器是运作来配置该快闪存储器以这些物理区块的一作一第一数据接收区块;
在该第一数据接收区块上一第一写入操作以及一第二写入操作之间,该微控制器将一第一物理-逻辑地址映射表的仅仅局部封存至一逻辑-物理地址映射表;
该逻辑-物理地址映射表设置在该快闪存储器上;且
该第一物理-逻辑地址映射表建立于该随机存取存储器上,以记录一个物理区块的物理页所对应的逻辑地址。
2.如权利要求1所述的数据储存装置,其特征在于:
该微控制器包括根据该主机对该第一数据接收区块所下达的写入操作建立该第一物理-逻辑地址映射表。
3.如权利要求2所述的数据储存装置,其特征在于:
将特定长度的使用者数据写入该第一数据接收区块后,该微控制器是运作来将该第一物理-逻辑地址映射表中对应上述特定长度的使用者数据的一段落封存至该逻辑-物理地址映射表;且
该特定尺寸是小于该第一数据接收区块的总尺寸。
4.如权利要求2所述的数据储存装置,其特征在于:
在写入各短于一物理页的一串使用者数据进该第一数据接收区块后,该微控制器是运作来在该第一数据接收区块上接续的写入操作之间,穿插将该第一物理-逻辑地址映射表封存至该逻辑-物理地址映射表。
5.如权利要求1所述的数据储存装置,其特征在于:
该微控制器是运作来在该快闪存储器的这些物理区块之间对应该第一物理-逻辑地址映射表的一第一表格过期区块填满时,配置该快闪存储器提供上述第一数据接收区块;且
该微控制器是运作来在该第一数据接收区块的写入操作之间,穿插将该第一物理-逻辑地址映射表封存至该逻辑-物理地址映射表。
6.如权利要求5所述的数据储存装置,其特征在于:
该微控制器是运作来在该快闪存储器的这些物理区块之间对应一第二物理-逻辑地址映射表的一第二表格过期区块填满时,配置该快闪存储器提供一第二数据接收区块,该第二物理-逻辑地址映射表是建立于该随机存取存储器上;
该微控制器是运作来在该第二数据接收区块的写入操作之间,穿插将该第二物理-逻辑地址映射表封存至该逻辑-物理地址映射表;
该第一数据接收区块以及该第一表格过期区块是配置作一第一型态的写入操作;且
该第二数据接收区块以及该第二表格过期区块是配置作一第二型态的写入操作。
7.如权利要求1所述的数据储存装置,其特征在于:
该微控制器是运作来在该快闪存储器的这些物理区块之间对应该第一物理-逻辑地址映射表的一第一表格过期区块遭非预期掉电事件中断时,于一复电程序配置该快闪存储器提供上述第一数据接收区块;
该微控制器是运作来在该复电程序修复该第一物理-逻辑地址映射表;以及
该微控制器是运作来在该第一数据接收区块的写入操作之间,穿插将修复后的该第一物理-逻辑地址映射表封存至该逻辑-物理地址映射表。
8.如权利要求7所述的数据储存装置,其特征在于:
该微控制器是运作来在该快闪存储器的这些物理区块之间对应一第二物理-逻辑地址映射表的一第二表格过期区块遭非预期掉电事件中断时,于该复电程序配置该快闪存储器提供一第二数据接收区块,该第二物理-逻辑地址映射表是建立于该随机存取存储器上;
该微控制器是运作来在该复电程序修复该第二物理-逻辑地址映射表;
该微控制器是运作来在该第二数据接收区块的写入操作之间,穿插将修复后的该第二物理-逻辑地址映射表封存至该逻辑-物理地址映射表;
该第一数据接收区块以及该第一表格过期区块是配置作一第一型态的写入操作;且
该第二数据接收区块以及该第二表格过期区块是配置作一第二型态的写入操作。
9.如权利要求1所述的数据储存装置,其特征在于:
该微控制器是还更运作来使用一指标标示该第一物理-逻辑地址映射表中尚未封存至该逻辑-物理地址映射表的一段内容;且
该微控制器是运作来根据该指标搜寻该第一物理-逻辑地址映射表。
10.一种快闪存储器控制方法,包括:
配置一快闪存储器,以由该快闪存储器的多个物理区块提供一第一数据接收区块,上述物理区块各自包括多个物理页;以及
在该第一数据接收区块上一第一写入操作以及一第二写入操作之间,将一第一物理-逻辑地址映射表的仅仅局部封存至一逻辑-物理地址映射表;
其中:
该逻辑-物理地址映射表是维护于该快闪存储器上;且
该第一物理-逻辑地址映射表是建立于一随机存取存储器上,以记录一个物理区块的物理页所对应的逻辑地址。
11.如权利要求10所述的快闪存储器控制方法,其特征在于:
该第一物理-逻辑地址映射表是根据一主机对该第一数据接收区块所下达的写入操作而建立。
12.如权利要求11所述的快闪存储器方法,其特征在于:
在特定长度的使用者数据写入该第一数据接收区块后,将该第一物理-逻辑地址映射表中对应上述特定长度的使用者数据的一段落封存至该逻辑-物理地址映射表;且
上述特定尺寸是小于该第一数据接收区块的总尺寸。
13.如权利要求11所述的快闪存储器控制方法,其特征在于:
在写入各短于一物理页的一串使用者数据进该第一数据接收区块后,在该第一数据接收区块上接续的写入操作之间,穿插将该第一物理-逻辑地址映射表封存至该逻辑-物理地址映射表。
14.如权利要求10所述的快闪存储器控制方法,其特征在于:
该快闪存储器是在该快闪存储器的这些物理区块之间对应该第一物理-逻辑地址映射表的一第一表格过期区块填满时,配置提供上述第一数据接收区块;且
该第一物理-逻辑地址映射表是穿插在该第一数据接收区块的写入操作之间封存至该逻辑-物理地址映射表。
15.如权利要求14所述的快闪存储器控制方法,其特征在于,还包括:
在该快闪存储器的这些物理区块之间对应一第二物理-逻辑地址映射表的一第二表格过期区块填满时,配置该快闪存储器更提供一第二数据接收区块,该第二物理-逻辑地址映射表是建立于该随机存取存储器上;以及
穿插在该第二数据接收区块的写入操作之间封存该第二物理-逻辑地址映射表至该逻辑-物理地址映射表;
其中:
该第一数据接收区块以及该第一表格过期区块是配置作一第一型态的写入操作;且
该第二数据接收区块以及该第二表格过期区块是配置作一第二型态的写入操作。
16.如权利要求10所述的快闪存储器控制方法,其特征在于:
在该快闪存储器的这些物理区块之间对应该第一物理-逻辑地址映射表的一第一表格过期区块的写入操作遭非预期掉电中断后,该快闪存储器是于一复电程序配置提供上述第一数据接收区块;
该第一物理-逻辑地址映射表是在上述复电程序修复;并且
修复后的该第一物理-逻辑地址映射表是穿插在该第一数据接收区块的写入操作之间封存至该逻辑-物理地址映射表。
17.如权利要求16所述的快闪存储器控制方法,其特征在于,还包括:
在该快闪存储器的这些物理区块之间对应一第二物理-逻辑地址映射表的一第二表格过期区块的写入操作遭非预期掉电中断后,配置该快闪存储器于上述复电程序更配置提供一第二数据接收区块,该第二物理-逻辑地址映射表建立于该随机存取存储器上;
在上述复电程序修复该第二物理-逻辑地址映射表;并且
穿插在该第二数据接收区块的写入操作之间将修复后的该第二物理-逻辑地址映射表是封存至该逻辑-物理地址映射表;
其中:
该第一数据接收区块以及该第一表格过期区块是配置作一第一型态的写入操作;且
该第二数据接收区块以及该第二表格过期区块是配置作一第二型态的写入操作。
18.如权利要求10所述的快闪存储器控制方法,其特征在于,还包括:
使用一指标标示该第一物理-逻辑地址映射表中尚未封存至该逻辑-物理地址映射表的一段内容;且
根据该指标搜寻该第一物理-逻辑地址映射表。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361920830P | 2013-12-26 | 2013-12-26 | |
US61/920,830 | 2013-12-26 | ||
US14/534,488 | 2014-11-06 | ||
US14/534,488 US9632880B2 (en) | 2013-12-26 | 2014-11-06 | Data storage device and flash memory control method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104750619A true CN104750619A (zh) | 2015-07-01 |
CN104750619B CN104750619B (zh) | 2018-05-11 |
Family
ID=53481879
Family Applications (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410743784.7A Active CN104750625B (zh) | 2013-12-26 | 2014-12-08 | 数据储存装置以及快闪存储器控制方法 |
CN201410743192.5A Active CN104750619B (zh) | 2013-12-26 | 2014-12-08 | 数据储存装置以及快闪存储器控制方法 |
CN201410742700.8A Active CN104750618B (zh) | 2013-12-26 | 2014-12-08 | 数据储存装置以及快闪存储器控制方法 |
CN201410825548.XA Active CN104750626B (zh) | 2013-12-26 | 2014-12-25 | 数据储存装置以及快闪存储器控制方法 |
CN201410821110.4A Active CN104750615B (zh) | 2013-12-26 | 2014-12-25 | 数据储存装置以及快闪存储器控制方法 |
CN201410821785.9A Active CN104750616B (zh) | 2013-12-26 | 2014-12-25 | 数据储存装置以及快闪存储器控制方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410743784.7A Active CN104750625B (zh) | 2013-12-26 | 2014-12-08 | 数据储存装置以及快闪存储器控制方法 |
Family Applications After (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410742700.8A Active CN104750618B (zh) | 2013-12-26 | 2014-12-08 | 数据储存装置以及快闪存储器控制方法 |
CN201410825548.XA Active CN104750626B (zh) | 2013-12-26 | 2014-12-25 | 数据储存装置以及快闪存储器控制方法 |
CN201410821110.4A Active CN104750615B (zh) | 2013-12-26 | 2014-12-25 | 数据储存装置以及快闪存储器控制方法 |
CN201410821785.9A Active CN104750616B (zh) | 2013-12-26 | 2014-12-25 | 数据储存装置以及快闪存储器控制方法 |
Country Status (3)
Country | Link |
---|---|
US (8) | US9645896B2 (zh) |
CN (6) | CN104750625B (zh) |
TW (6) | TWI611293B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528452A (zh) * | 2015-09-11 | 2017-03-22 | 慧荣科技股份有限公司 | 动态逻辑分段方法以及使用该方法的装置 |
CN107291378A (zh) * | 2016-03-31 | 2017-10-24 | 慧荣科技股份有限公司 | 数据储存装置及其数据维护方法 |
CN108255436A (zh) * | 2018-01-25 | 2018-07-06 | 广东美的制冷设备有限公司 | 数据存取方法、存取装置、家电设备和可读存储介质 |
CN109144886A (zh) * | 2017-06-27 | 2019-01-04 | 慧荣科技股份有限公司 | 数据储存装置 |
CN109977034A (zh) * | 2017-12-28 | 2019-07-05 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器操作方法 |
CN113282522A (zh) * | 2017-03-07 | 2021-08-20 | 慧荣科技股份有限公司 | 数据储存装置以及其操作方法 |
CN113535092A (zh) * | 2021-07-20 | 2021-10-22 | 阿里巴巴新加坡控股有限公司 | 用于减少内存元数据的存储引擎、方法和可读介质 |
Families Citing this family (78)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9811275B2 (en) * | 2015-02-27 | 2017-11-07 | Toshiba Memory Corporation | Memory system and data control method |
CN106095699B (zh) * | 2015-03-20 | 2020-12-01 | 爱思开海力士有限公司 | 用于快闪存储器的可扩展spor算法 |
US9703498B1 (en) * | 2015-06-29 | 2017-07-11 | EMC IP Holding Company LLC | Allocating space in a file system from sequential and random cursors |
TWI563510B (en) * | 2015-07-24 | 2016-12-21 | Phison Electronics Corp | Mapping table accessing method, memory control circuit unit and memory storage device |
TWI575374B (zh) * | 2015-08-04 | 2017-03-21 | 群聯電子股份有限公司 | 映射表格更新方法、記憶體儲存裝置及記憶體控制電路單元 |
TWI646461B (zh) * | 2016-10-12 | 2019-01-01 | 慧榮科技股份有限公司 | 資料儲存裝置及其資料維護方法 |
US10073769B2 (en) | 2015-10-15 | 2018-09-11 | Silicon Motion, Inc. | Data storage device and data maintenance method thereof |
TWI537729B (zh) | 2015-10-15 | 2016-06-11 | 慧榮科技股份有限公司 | 資料儲存裝置及其資料維護方法 |
TWI604308B (zh) | 2015-11-18 | 2017-11-01 | 慧榮科技股份有限公司 | 資料儲存裝置及其資料維護方法 |
KR102625637B1 (ko) * | 2016-02-01 | 2024-01-17 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
CN105868122A (zh) * | 2016-03-28 | 2016-08-17 | 深圳市硅格半导体股份有限公司 | 快闪存储设备的数据处理方法及装置 |
CN107391026B (zh) | 2016-04-27 | 2020-06-02 | 慧荣科技股份有限公司 | 闪存装置及闪存存储管理方法 |
CN111679787B (zh) | 2016-04-27 | 2023-07-18 | 慧荣科技股份有限公司 | 闪存装置、闪存控制器及闪存存储管理方法 |
CN107391296B (zh) | 2016-04-27 | 2020-11-06 | 慧荣科技股份有限公司 | 存取闪存模块的方法及相关的闪存控制器与记忆装置 |
US10019314B2 (en) | 2016-04-27 | 2018-07-10 | Silicon Motion Inc. | Flash memory apparatus and storage management method for flash memory |
US10289487B2 (en) | 2016-04-27 | 2019-05-14 | Silicon Motion Inc. | Method for accessing flash memory module and associated flash memory controller and memory device |
US9910772B2 (en) * | 2016-04-27 | 2018-03-06 | Silicon Motion Inc. | Flash memory apparatus and storage management method for flash memory |
TW201742063A (zh) | 2016-05-30 | 2017-12-01 | 慧榮科技股份有限公司 | 資料儲存方法及發生電源中斷事件後之系統初始化之方法 |
CN106201903B (zh) * | 2016-07-05 | 2019-07-30 | 深圳市领存技术有限公司 | 一种三维闪存擦除控制方法及其系统 |
KR20180019419A (ko) | 2016-08-16 | 2018-02-26 | 삼성전자주식회사 | 메모리 컨트롤러, 메모리 시스템 및 그 동작방법 |
KR20180031851A (ko) * | 2016-09-19 | 2018-03-29 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
TWI640868B (zh) * | 2016-10-07 | 2018-11-11 | 慧榮科技股份有限公司 | 資料儲存裝置及其資料寫入方法 |
TWI607312B (zh) * | 2016-10-07 | 2017-12-01 | 慧榮科技股份有限公司 | 資料儲存裝置及其資料寫入方法 |
TWI619018B (zh) * | 2016-11-10 | 2018-03-21 | 慧榮科技股份有限公司 | 可用於資料儲存裝置之垃圾蒐集方法 |
TWI591533B (zh) | 2016-11-25 | 2017-07-11 | 慧榮科技股份有限公司 | 可用於資料儲存裝置之資料儲存方法與資料回復程序、以及採用這些方法的資料儲存裝置 |
TWI670640B (zh) * | 2016-11-25 | 2019-09-01 | 慧榮科技股份有限公司 | 可用於資料儲存裝置之資料儲存方法與資料回復程序、以及採用這些方法的資料儲存裝置 |
TWI627531B (zh) * | 2016-11-28 | 2018-06-21 | 慧榮科技股份有限公司 | 資料儲存裝置以及其操作方法 |
KR20180080589A (ko) * | 2017-01-04 | 2018-07-12 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
TWI659307B (zh) * | 2017-01-06 | 2019-05-11 | 慧榮科技股份有限公司 | 資料儲存裝置以及快閃記憶體控制方法 |
TWI644250B (zh) * | 2017-03-07 | 2018-12-11 | 慧榮科技股份有限公司 | 電子系統及其資料維護方法 |
TWI602116B (zh) | 2017-03-07 | 2017-10-11 | Silicon Motion Inc | 資料儲存裝置及其資料維護方法 |
CN108733575B (zh) * | 2017-04-20 | 2022-12-27 | 深圳市得一微电子有限责任公司 | 一种断电重启后逻辑对物理映像表的重建方法、固态硬盘 |
TWI639917B (zh) | 2017-04-25 | 2018-11-01 | 慧榮科技股份有限公司 | 資料儲存裝置及映射表重建方法 |
US10141050B1 (en) * | 2017-04-27 | 2018-11-27 | Pure Storage, Inc. | Page writes for triple level cell flash memory |
TWI633437B (zh) * | 2017-05-26 | 2018-08-21 | 慧榮科技股份有限公司 | 偵測使用中邏輯頁面之資料儲存裝置與資料儲存方法 |
CN108959108B (zh) | 2017-05-26 | 2021-08-24 | 上海宝存信息科技有限公司 | 固态硬盘访问方法以及使用该方法的装置 |
KR102233400B1 (ko) * | 2017-05-29 | 2021-03-26 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
TWI630540B (zh) * | 2017-07-13 | 2018-07-21 | 慧榮科技股份有限公司 | 資料儲存裝置及非揮發式記憶體操作方法 |
CN107391046B (zh) * | 2017-08-02 | 2021-04-20 | 郑州云海信息技术有限公司 | 一种raid系统的数据写入方法及装置 |
CN109582599B (zh) * | 2017-09-29 | 2023-12-22 | 上海宝存信息科技有限公司 | 数据储存装置以及非挥发式存储器操作方法 |
CN108132853A (zh) * | 2017-11-24 | 2018-06-08 | 北京动力机械研究所 | 用于发动机控制器软件的上电校验双冗余引导加载方法 |
TWI733964B (zh) * | 2017-12-13 | 2021-07-21 | 英業達股份有限公司 | 記憶體整體測試之系統及其方法 |
CN107967125A (zh) * | 2017-12-20 | 2018-04-27 | 北京京存技术有限公司 | 闪存转换层的管理方法、装置及计算机可读存储介质 |
TWI649755B (zh) | 2017-12-22 | 2019-02-01 | 慧榮科技股份有限公司 | 資料儲存裝置與記憶體裝置之資料處理方法 |
TWI668700B (zh) * | 2017-12-22 | 2019-08-11 | 慧榮科技股份有限公司 | 資料儲存裝置與記憶體裝置之資料處理方法 |
TWI670594B (zh) * | 2018-01-18 | 2019-09-01 | 慧榮科技股份有限公司 | 資料儲存裝置 |
TWI664527B (zh) * | 2018-03-20 | 2019-07-01 | 慧榮科技股份有限公司 | 用來於一記憶裝置中進行初始化之方法、記憶裝置及其控制器以及電子裝置 |
TWI679538B (zh) * | 2018-03-31 | 2019-12-11 | 慧榮科技股份有限公司 | 資料儲存系統之控制單元以及邏輯至物理映射表更新方法 |
JP2019185350A (ja) * | 2018-04-09 | 2019-10-24 | 東芝メモリ株式会社 | メモリシステム及びメモリシステムの制御方法 |
TWI669610B (zh) * | 2018-06-13 | 2019-08-21 | 慧榮科技股份有限公司 | 資料儲存裝置以及非揮發式記憶體控制方法 |
TWI678622B (zh) * | 2018-06-15 | 2019-12-01 | 慧榮科技股份有限公司 | 資料儲存裝置的開發系統以及產品化方法 |
US10534551B1 (en) * | 2018-06-22 | 2020-01-14 | Micron Technology, Inc. | Managing write operations during a power loss |
CN110955384B (zh) * | 2018-09-26 | 2023-04-18 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器控制方法 |
CN109446109B (zh) * | 2018-10-25 | 2021-06-29 | 江苏华存电子科技有限公司 | 一种混合型记录实体映像表的方法 |
KR102516246B1 (ko) * | 2018-10-29 | 2023-03-30 | 마이크론 테크놀로지, 인크. | Slc 캐시 할당 |
CN109582222B (zh) * | 2018-10-31 | 2020-11-24 | 华中科技大学 | 一种主机感知瓦记录磁盘中持久缓存的清理方法 |
TW202018513A (zh) * | 2018-11-07 | 2020-05-16 | 威剛科技股份有限公司 | 固態硬碟及其資料存取的方法 |
KR20200058867A (ko) * | 2018-11-20 | 2020-05-28 | 에스케이하이닉스 주식회사 | 메모리 시스템의 복구 동작 중 비휘발성 메모리 블록의 반복 접근을 줄이는 방법 및 장치 |
TWI704456B (zh) * | 2018-11-22 | 2020-09-11 | 慧榮科技股份有限公司 | 資料儲存裝置與資料存取方法 |
KR102637478B1 (ko) | 2018-12-05 | 2024-02-15 | 삼성전자주식회사 | 오픈 채널 솔리드 스테이트 드라이브, 이를 포함하는 비휘발성 메모리 시스템 및 오픈 채널 솔리드 스테이트 드라이브의 파워 로스 프로텍션 방법 |
TWI749279B (zh) * | 2018-12-18 | 2021-12-11 | 慧榮科技股份有限公司 | 資料儲存裝置與資料處理方法 |
TWI739075B (zh) * | 2019-01-03 | 2021-09-11 | 慧榮科技股份有限公司 | 閃存的資料寫入方法及電腦程式產品 |
US11288185B2 (en) | 2019-01-03 | 2022-03-29 | Silicon Motion, Inc. | Method and computer program product for performing data writes into a flash memory |
TWI709854B (zh) * | 2019-01-21 | 2020-11-11 | 慧榮科技股份有限公司 | 資料儲存裝置及用於存取邏輯至物理位址映射表之方法 |
JP6708762B1 (ja) * | 2019-01-29 | 2020-06-10 | ウィンボンド エレクトロニクス コーポレーション | 半導体記憶装置 |
CN111610929B (zh) * | 2019-02-26 | 2023-04-14 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器控制方法 |
TWI710905B (zh) * | 2019-05-06 | 2020-11-21 | 慧榮科技股份有限公司 | 資料儲存裝置及邏輯至物理位址映射表之載入方法 |
TWI695264B (zh) * | 2019-05-20 | 2020-06-01 | 慧榮科技股份有限公司 | 資料儲存裝置與資料處理方法 |
TWI745695B (zh) * | 2019-05-22 | 2021-11-11 | 慧榮科技股份有限公司 | 用來進行無預警斷電復原管理之方法、記憶裝置及其控制器以及電子裝置 |
CN112100087B (zh) * | 2019-06-17 | 2024-04-02 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器控制方法 |
TWI726524B (zh) * | 2019-12-09 | 2021-05-01 | 新唐科技股份有限公司 | 電子處理裝置及記憶體控制方法 |
TWI738308B (zh) * | 2020-04-27 | 2021-09-01 | 宇瞻科技股份有限公司 | 基於分頁模式備份資料的固態硬碟以及基於分頁模式的固態硬碟資料備份方法 |
CN112506814B (zh) * | 2020-11-17 | 2024-03-22 | 合肥康芯威存储技术有限公司 | 一种存储器及其控制方法与存储系统 |
CN112559386A (zh) * | 2020-12-22 | 2021-03-26 | 深圳忆联信息系统有限公司 | 提升ssd性能的方法、装置、计算机设备及存储介质 |
CN112668642A (zh) * | 2020-12-28 | 2021-04-16 | 高新兴智联科技有限公司 | 一种机动车电子标识与视频结合系统及方法 |
KR20220142192A (ko) * | 2021-04-14 | 2022-10-21 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
US11615020B2 (en) * | 2021-08-12 | 2023-03-28 | Micron Technology, Inc. | Implementing mapping data structures to minimize sequentially written data accesses |
CN114356246B (zh) * | 2022-03-17 | 2022-05-13 | 北京得瑞领新科技有限公司 | Ssd内部数据的存储管理方法、装置、存储介质及ssd设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100169551A1 (en) * | 2008-12-27 | 2010-07-01 | Kabushiki Kaisha Toshiba | Memory system and method of controlling memory system |
US20110087829A1 (en) * | 2009-10-09 | 2011-04-14 | Silicon Motion, Inc. | Data storage device and data access method |
CN102063377B (zh) * | 2009-11-16 | 2013-09-18 | 联发科技股份有限公司 | 存储介质的数据存取管理方法及存储控制器 |
Family Cites Families (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7886108B2 (en) | 2000-01-06 | 2011-02-08 | Super Talent Electronics, Inc. | Methods and systems of managing memory addresses in a large capacity multi-level cell (MLC) based flash memory device |
US8078794B2 (en) | 2000-01-06 | 2011-12-13 | Super Talent Electronics, Inc. | Hybrid SSD using a combination of SLC and MLC flash memory arrays |
US8266367B2 (en) | 2003-12-02 | 2012-09-11 | Super Talent Electronics, Inc. | Multi-level striping and truncation channel-equalization for flash-memory system |
US6970890B1 (en) | 2000-12-20 | 2005-11-29 | Bitmicro Networks, Inc. | Method and apparatus for data recovery |
US6895490B1 (en) * | 2001-04-09 | 2005-05-17 | Matrix Semiconductor, Inc. | Method for making a write-once memory device read compatible with a write-many file system |
US7085879B2 (en) | 2002-02-27 | 2006-08-01 | Microsoft Corporation | Dynamic data structures for tracking data stored in a flash memory device |
CN100590737C (zh) | 2003-01-26 | 2010-02-17 | 深圳市朗科科技股份有限公司 | 闪存介质中的数据管理方法 |
WO2004079575A1 (fr) | 2003-03-04 | 2004-09-16 | Netac Technology Co., Ltd. | Procede de gestion de donnees pour support a memoire flash |
TW594477B (en) * | 2003-05-02 | 2004-06-21 | Genesys Logic Inc | Method and related device for accessing non-volatile memory of dual platforms for PC and X-BOX |
US6988175B2 (en) | 2003-06-30 | 2006-01-17 | M-Systems Flash Disk Pioneers Ltd. | Flash memory management method that is resistant to data corruption by power loss |
US7509474B2 (en) | 2005-06-08 | 2009-03-24 | Micron Technology, Inc. | Robust index storage for non-volatile memory |
KR101257848B1 (ko) | 2005-07-13 | 2013-04-24 | 삼성전자주식회사 | 복합 메모리를 구비하는 데이터 저장 시스템 및 그 동작방법 |
US20070156998A1 (en) * | 2005-12-21 | 2007-07-05 | Gorobets Sergey A | Methods for memory allocation in non-volatile memories with a directly mapped file storage system |
CN101346704B (zh) * | 2005-12-22 | 2011-10-05 | Nxp股份有限公司 | 具有可擦除块单元的存储器和定位具有指针信息地块的联结指针链 |
US7711923B2 (en) * | 2006-06-23 | 2010-05-04 | Microsoft Corporation | Persistent flash memory mapping table |
CN100583293C (zh) | 2006-08-09 | 2010-01-20 | 安国国际科技股份有限公司 | 存储装置及其读写方法 |
KR100771521B1 (ko) | 2006-10-30 | 2007-10-30 | 삼성전자주식회사 | 멀티 레벨 셀을 포함하는 플래시 메모리 장치 및 그것의데이터 쓰기 방법 |
KR100833188B1 (ko) | 2006-11-03 | 2008-05-28 | 삼성전자주식회사 | 데이터의 특성에 따라 싱글 레벨 셀 또는 멀티 레벨 셀에데이터를 저장하는 불휘발성 메모리 시스템 |
US8296337B2 (en) * | 2006-12-06 | 2012-10-23 | Fusion-Io, Inc. | Apparatus, system, and method for managing data from a requesting device with an empty data token directive |
US8533384B2 (en) | 2007-12-27 | 2013-09-10 | Sandisk Enterprise Ip Llc | Flash memory controller garbage collection operations performed independently in multiple flash memory groups |
KR101077339B1 (ko) | 2007-12-28 | 2011-10-26 | 가부시끼가이샤 도시바 | 반도체 기억 장치 |
KR101067457B1 (ko) | 2008-03-01 | 2011-09-27 | 가부시끼가이샤 도시바 | 메모리 시스템 |
TWI472916B (zh) * | 2008-06-02 | 2015-02-11 | A Data Technology Co Ltd | 記憶體儲存空間管理方法 |
US8843691B2 (en) | 2008-06-25 | 2014-09-23 | Stec, Inc. | Prioritized erasure of data blocks in a flash storage device |
US8321652B2 (en) * | 2008-08-01 | 2012-11-27 | Infineon Technologies Ag | Process and method for logical-to-physical address mapping using a volatile memory device in solid state disks |
CN101667157A (zh) | 2008-09-04 | 2010-03-10 | 群联电子股份有限公司 | 闪存数据传输方法、闪存储存系统及控制器 |
TWI467369B (zh) | 2008-10-01 | 2015-01-01 | A Data Technology Co Ltd | 混合密度記憶體系統及其控制方法 |
US8412880B2 (en) | 2009-01-08 | 2013-04-02 | Micron Technology, Inc. | Memory system controller to manage wear leveling across a plurality of storage nodes |
US8832353B2 (en) * | 2009-04-07 | 2014-09-09 | Sandisk Technologies Inc. | Host stop-transmission handling |
US20100306451A1 (en) | 2009-06-01 | 2010-12-02 | Joshua Johnson | Architecture for nand flash constraint enforcement |
US8688894B2 (en) | 2009-09-03 | 2014-04-01 | Pioneer Chip Technology Ltd. | Page based management of flash storage |
US9104546B2 (en) | 2010-05-24 | 2015-08-11 | Silicon Motion Inc. | Method for performing block management using dynamic threshold, and associated memory device and controller thereof |
KR101662827B1 (ko) | 2010-07-02 | 2016-10-06 | 삼성전자주식회사 | 쓰기 패턴에 따라 데이터 블록의 쓰기 모드를 선택하는 메모리 시스템 및 그것의 데이터 쓰기 방법 |
KR101811297B1 (ko) | 2011-03-15 | 2017-12-27 | 삼성전자주식회사 | 불휘발성 메모리를 제어하는 메모리 컨트롤러 |
CN102682848B (zh) | 2011-03-16 | 2016-12-07 | 三星电子株式会社 | 存储器装置、存储器卡、固态驱动器、系统及其操作方法 |
KR20140040137A (ko) | 2011-05-17 | 2014-04-02 | 샌디스크 테크놀로지스, 인코포레이티드 | 활성 slc 및 mlc 메모리 분할들 간에 분포된 작은 논리 그룹들을 가진 비휘발성 메모리 및 방법 |
US20120297121A1 (en) | 2011-05-17 | 2012-11-22 | Sergey Anatolievich Gorobets | Non-Volatile Memory and Method with Small Logical Groups Distributed Among Active SLC and MLC Memory Partitions |
CN103106143B (zh) * | 2011-11-11 | 2016-01-13 | 光宝科技股份有限公司 | 固态储存装置及其逻辑至实体对应表建立方法 |
CN102591748A (zh) | 2011-12-29 | 2012-07-18 | 记忆科技(深圳)有限公司 | 固态硬盘及其掉电保护方法、系统 |
US9244833B2 (en) | 2012-05-30 | 2016-01-26 | Silicon Motion, Inc. | Data-storage device and flash memory control method |
TWI544334B (zh) | 2012-05-30 | 2016-08-01 | 慧榮科技股份有限公司 | 資料儲存裝置與資料儲存裝置操作方法 |
TWI477966B (zh) | 2012-05-31 | 2015-03-21 | Silicon Motion Inc | 資料儲存裝置與快閃記憶體操作方法 |
US20130326169A1 (en) | 2012-05-31 | 2013-12-05 | Amir Shaharabany | Method and Storage Device for Detection of Streaming Data Based on Logged Read/Write Transactions |
US8910017B2 (en) | 2012-07-02 | 2014-12-09 | Sandisk Technologies Inc. | Flash memory with random partition |
US9146857B2 (en) * | 2012-08-18 | 2015-09-29 | Storart Technology Co. Ltd. | Method for mapping management |
US9268682B2 (en) | 2012-10-05 | 2016-02-23 | Skyera, Llc | Methods, devices and systems for physical-to-logical mapping in solid state drives |
US9098400B2 (en) | 2012-10-31 | 2015-08-04 | International Business Machines Corporation | Dynamic tuning of internal parameters for solid-state disk based on workload access patterns |
US8954694B2 (en) | 2012-11-15 | 2015-02-10 | Western Digital Technologies, Inc. | Methods, data storage devices and systems for fragmented firmware table rebuild in a solid state drive |
CN103150125B (zh) | 2013-02-20 | 2015-06-17 | 郑州信大捷安信息技术股份有限公司 | 提高掉电保护数据缓冲存储器使用寿命的方法及智能卡 |
US8990458B2 (en) | 2013-02-28 | 2015-03-24 | Kabushiki Kaisha Toshiba | Controller, semiconductor storage device and method of controlling data writing |
US20150127687A1 (en) * | 2013-11-04 | 2015-05-07 | Roger Graves | System and methods for creating and modifying a hierarchial data structure |
US20150261444A1 (en) | 2014-03-12 | 2015-09-17 | Kabushiki Kaisha Toshiba | Memory system and information processing device |
-
2014
- 2014-11-06 US US14/534,603 patent/US9645896B2/en active Active
- 2014-11-06 US US14/534,535 patent/US9645894B2/en active Active
- 2014-11-06 US US14/534,488 patent/US9632880B2/en active Active
- 2014-11-06 US US14/534,686 patent/US9542278B2/en active Active
- 2014-11-06 US US14/534,569 patent/US9645895B2/en active Active
- 2014-11-06 US US14/534,633 patent/US9684568B2/en active Active
- 2014-11-10 TW TW103138872A patent/TWI611293B/zh active
- 2014-11-10 TW TW103138870A patent/TWI561982B/zh active
- 2014-11-11 TW TW103138991A patent/TWI520139B/zh active
- 2014-12-08 CN CN201410743784.7A patent/CN104750625B/zh active Active
- 2014-12-08 CN CN201410743192.5A patent/CN104750619B/zh active Active
- 2014-12-08 CN CN201410742700.8A patent/CN104750618B/zh active Active
- 2014-12-18 TW TW103144257A patent/TWI516935B/zh active
- 2014-12-18 TW TW103144256A patent/TWI575373B/zh active
- 2014-12-18 TW TW103144258A patent/TWI570737B/zh active
- 2014-12-25 CN CN201410825548.XA patent/CN104750626B/zh active Active
- 2014-12-25 CN CN201410821110.4A patent/CN104750615B/zh active Active
- 2014-12-25 CN CN201410821785.9A patent/CN104750616B/zh active Active
-
2017
- 2017-02-21 US US15/437,543 patent/US9727271B2/en active Active
- 2017-05-17 US US15/597,742 patent/US9842030B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100169551A1 (en) * | 2008-12-27 | 2010-07-01 | Kabushiki Kaisha Toshiba | Memory system and method of controlling memory system |
US20110087829A1 (en) * | 2009-10-09 | 2011-04-14 | Silicon Motion, Inc. | Data storage device and data access method |
CN102063377B (zh) * | 2009-11-16 | 2013-09-18 | 联发科技股份有限公司 | 存储介质的数据存取管理方法及存储控制器 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528452A (zh) * | 2015-09-11 | 2017-03-22 | 慧荣科技股份有限公司 | 动态逻辑分段方法以及使用该方法的装置 |
CN106528452B (zh) * | 2015-09-11 | 2020-03-13 | 慧荣科技股份有限公司 | 动态逻辑分段方法以及使用该方法的装置 |
CN107291378A (zh) * | 2016-03-31 | 2017-10-24 | 慧荣科技股份有限公司 | 数据储存装置及其数据维护方法 |
CN113282522A (zh) * | 2017-03-07 | 2021-08-20 | 慧荣科技股份有限公司 | 数据储存装置以及其操作方法 |
CN109144886A (zh) * | 2017-06-27 | 2019-01-04 | 慧荣科技股份有限公司 | 数据储存装置 |
CN109144886B (zh) * | 2017-06-27 | 2022-11-11 | 慧荣科技股份有限公司 | 数据储存装置 |
CN109977034A (zh) * | 2017-12-28 | 2019-07-05 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器操作方法 |
CN109977034B (zh) * | 2017-12-28 | 2022-09-16 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器操作方法 |
CN108255436A (zh) * | 2018-01-25 | 2018-07-06 | 广东美的制冷设备有限公司 | 数据存取方法、存取装置、家电设备和可读存储介质 |
CN113535092A (zh) * | 2021-07-20 | 2021-10-22 | 阿里巴巴新加坡控股有限公司 | 用于减少内存元数据的存储引擎、方法和可读介质 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104750619A (zh) | 数据储存装置以及快闪存储器控制方法 | |
US10445231B2 (en) | Method and system for storage device metadata management and processing | |
CN105740157B (zh) | 数据储存装置以及快闪存储器控制方法 | |
CN102841851B (zh) | 闪存管理方法和闪存设备 | |
US20180089074A1 (en) | Techniques to Manage Key-Value Storage at a Memory or Storage Device | |
TWI692690B (zh) | 存取快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置 | |
CN108664418A (zh) | 数据储存装置以及其操作方法 | |
CN104699413B (zh) | 数据管理方法、存储器存储装置及存储器控制电路单元 | |
CN104360958A (zh) | 基于块保留区替换的坏块管理系统及管理方法 | |
CN104461387A (zh) | 一种提高固态硬盘对未映射区域的读性能的方法 | |
CN104461397A (zh) | 一种固态硬盘及其读写方法 | |
CN104268095A (zh) | 一种存储器及基于该存储器进行数据读/写操作的方法 | |
CN108874301A (zh) | 数据储存装置以及其操作方法 | |
US9507523B1 (en) | Methods, devices and systems for variable size logical page management in a solid state drive | |
EP3346387B1 (en) | Storage system and system garbage collection method | |
CN104317733A (zh) | 一种nand flash坏块管理方法 | |
CN103970669A (zh) | 用于加速在固态设备中的回收操作的物理到逻辑地址映射 | |
TW201616363A (zh) | 資料儲存裝置以及快閃記憶體控制方法 | |
CN109521944A (zh) | 数据储存装置以及数据储存方法 | |
CN105278875A (zh) | 一种混合异构nand固态硬盘 | |
TWI718709B (zh) | 資料儲存裝置以及非揮發式記憶體控制方法 | |
US9354955B1 (en) | Partial garbage collection for fast error handling and optimized garbage collection for the invisible band | |
CN105468998A (zh) | 数据保护方法、数据保护装置以及固态硬盘存储系统 | |
CN102375779B (zh) | 一种数据处理方法以及数据处理模块 | |
Na et al. | Iplb+-tree for flash memory database systems. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |