CN113360303A - 进行数据存储管理以提升数据可靠度的方法以及相关设备 - Google Patents
进行数据存储管理以提升数据可靠度的方法以及相关设备 Download PDFInfo
- Publication number
- CN113360303A CN113360303A CN202110091156.5A CN202110091156A CN113360303A CN 113360303 A CN113360303 A CN 113360303A CN 202110091156 A CN202110091156 A CN 202110091156A CN 113360303 A CN113360303 A CN 113360303A
- Authority
- CN
- China
- Prior art keywords
- type
- block
- blocks
- data
- memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000013500 data storage Methods 0.000 title claims abstract description 49
- 230000015654 memory Effects 0.000 claims abstract description 208
- 238000007726 management method Methods 0.000 claims abstract description 48
- 230000004044 response Effects 0.000 claims abstract description 24
- 238000012545 processing Methods 0.000 claims abstract description 17
- 230000008569 process Effects 0.000 claims description 14
- 238000010926 purge Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000002860 competitive effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 231100000957 no side effect Toxicity 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
Images
Classifications
-
- 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
- G11C11/5621—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 using charge storage in a floating gate
- G11C11/5628—Programming or writing circuits; Data input circuits
-
- 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/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/008—Reliability or availability analysis
-
- 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/1068—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 sector programmable memories, e.g. flash disk
-
- 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
- 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/061—Improving I/O performance
-
- 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/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- 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/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- 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/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/4074—Power supply or voltage generation circuits, e.g. bias voltage generators, substrate voltage generators, back-up power, power control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
-
- 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/7207—Details relating to flash memory management management of metadata or control data
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Credit Cards Or The Like (AREA)
- Read Only Memory (AREA)
Abstract
本发明公开了一种用来进行数据存储管理以提升数据可靠度的方法与设备。该方法包括:从一主系统接收一写入命令,其中该写入命令指出需要将一组数据写入至一非挥发性存储器;判断一重复写入条件是否被满足,该重复写入条件包括该写入命令是一先前写入命令的一重复写入命令且对应于和该先前写入命令相同的一相同位址与一相同长度;以及响应于该重复写入条件被满足,将该组数据存储至该非挥发性存储器中的一第一类型的区块的至少一个,以供进行数据存储加强处理,该第一类型的区块的每记忆细胞的比特数小于一第二类型的区块的每记忆细胞的比特数。本发明的方法及相关设备能确保该记忆装置能在各种情况下妥善地运作,且能达到最佳化效能。
Description
技术领域
本发明是有关于存储器控制,尤指一种用来进行数据存储管理以提升数据可靠度(reliability)的方法以及相关设备(apparatus)诸如一记忆装置及其控制器以及一电子装置,例如该数据存储管理可借助于重复写入命令检测(repeated write commanddetection)来进行。
背景技术
近年来由于存储器的技术不断地发展,各种可携式或非可携式记忆装置(例如:符合SD/MMC、CF、MS、XD或UFS标准的记忆卡;又例如:固态硬盘;又例如:符合UFS或eMMC规格的嵌入式(embedded)记忆装置)被广泛地实施于诸多应用中。因此,如何改善这些记忆装置中的存储器的存取(access)控制遂成为相当热门的议题。
以常用的NAND型快闪存储器而言,其主要可区分为单阶细胞(Single LevelCell,SLC)与多阶细胞(Multiple Level Cell,MLC)两大类的快闪存储器。单阶细胞快闪存储器中的每个被当作记忆细胞(memory cell)的晶体管只有两种电荷值,分别用来表示逻辑值0与逻辑值1。另外,多阶细胞快闪存储器中的每个被当作记忆单元的晶体管的存储能力则被充分利用,是采用较高的电压来驱动,以通过不同级别的电压在一个晶体管中记录至少两组比特(bit;也可称为“位”)信息(诸如00、01、11、10);理论上,多阶细胞快闪存储器的记录密度可以达到单阶细胞快闪存储器的记录密度的至少两倍,因此广受NAND型快闪存储器制造商的欢迎。
相较于单阶细胞快闪存储器,由于多阶细胞快闪存储器的价格较便宜,并且在有限的空间里可提供较大的容量,故多阶细胞快闪存储器很快地成为市面上的记忆装置竞相采用的主流。然而,多阶细胞快闪存储器的不稳定性所导致的问题也一一浮现。为了确保记忆装置对快闪存储器的存取控制能符合相关规范,快闪存储器的控制器通常备有某些管理机制以妥善地管理数据的存取。
依据相关技术,有了这些管理机制的记忆装置还是有不足的地方。举例来说,一主系统诸如一多功能移动电话、平板计算机、全合一(All-In-One,AIO)计算机、膝上型计算机等可将用户的各种用户数据存储在其内的一记忆装置中。当需要使该记忆装置符合某个规格时,该记忆装置可能仅仅按照主系统(host system)所请求来执行某些基本操作诸如读取、写入等,并且可能没有用于装置间(inter-device)通信的额外命令。于是,该记忆装置可能默认以经济有效的方式将用户的用户数据存储在该记忆装置的一数据区中,而没有任何特殊处理,这是因为没有可用于装置间通信的额外命令。因此,需要一种新颖的方法及相关架构,以在没有副作用或较不可能带来副作用的状况下提升记忆装置的效能。
发明内容
本发明的一目的在于提供一种用来进行数据存储管理以提升数据可靠度(reliability)的方法(例如:该数据存储管理可借助于重复写入命令检测来进行),以及提供相关设备诸如一记忆装置及其控制器、包括该记忆装置的一电子装置等,以解决上述问题。
本发明至少一实施例提供一种用来进行数据存储管理以提升数据可靠度(reliability)的方法,其中该方法可被应用于(applied to)一记忆装置。该记忆装置可包括一非挥发性存储器(non-volatile memory,NV memory),该非挥发性存储器可包括至少一非挥发性存储器组件(NV memory element)(例如一或多个非挥发性存储器组件),且上述至少一非挥发性存储器组件可包括复数个区块(block)。该方法可包括:从一主系统(host system)接收一写入命令,其中该写入命令指出需要将一组数据写入至该非挥发性存储器;判断一重复写入条件(repeated writing condition)是否被满足,其中该重复写入条件包括:该写入命令是一先前写入命令的一重复写入命令,且该写入命令对应于和该先前写入命令相同的一相同位址与一相同长度;以及响应于该重复写入条件被满足,将该组数据存储至在该非挥发性存储器当中的一第一类型的区块(first type of blocks)中的至少一第一类型区块(first type block),以供进行数据存储加强处理(data storageenhancement processing),其中在该第一类型的区块中的任一区块中的一记忆细胞(memory cell)中所存储的一或多个比特的一第一比特数(bit count)小于在该非挥发性存储器当中的一第二类型的区块(second type of blocks)中的任一区块中的一记忆细胞中所存储的多个比特的一第二比特数。
除了以上方法外,本发明亦提供一种记忆装置,且该记忆装置可包括一非挥发性存储器以及一控制器。该非挥发性存储器是用来存储信息,其中该非挥发性存储器可包括至少一非挥发性存储器组件(例如一或多个非挥发性存储器组件),且上述至少一非挥发性存储器组件可包括复数个区块。该控制器是耦接至该非挥发性存储器,且该控制器是用来控制该记忆装置的运作。另外,该控制器包括一处理电路,其是用来依据来自一主系统(host system)的复数个主指令(host command)来控制该控制器,以容许该主系统通过该控制器存取该非挥发性存储器。例如,该控制器从该主系统接收一写入命令,其中该写入命令指出需要将一组数据写入至该非挥发性存储器;该控制器判断一重复写入条件是否被满足,其中该重复写入条件包括:该写入命令是一先前写入命令的一重复写入命令,且该写入命令对应于和该先前写入命令相同的一相同位址与一相同长度;以及响应于该重复写入条件被满足,该控制器将该组数据存储至在该非挥发性存储器当中的一第一类型的区块中的至少一第一类型区块,以供进行数据存储加强处理,其中在该第一类型的区块中的任一区块中的一记忆细胞中所存储的一或多个比特的一第一比特数小于在该非挥发性存储器当中的一第二类型的区块中的任一区块中的一记忆细胞中所存储的多个比特的一第二比特数。
依据某些实施例,本发明另提供一种电子装置。该电子装置可包括上述记忆装置,且可还包括该主系统。另外,该主系统可包括一主装置(host device),而该主装置可耦接至该记忆装置。该主装置可包括:至少一处理器,用来控制该主装置的操作;以及一电源供应电路,耦接至该至少一处理器,用来提供电源予该至少一处理器与该记忆装置。此外,该记忆装置可用来提供存储空间给该主装置。
除了以上方法外,本发明亦提供一种记忆装置的控制器,其中该记忆装置包括该控制器以及一非挥发性存储器。该非挥发性存储器可包括至少一非挥发性存储器组件(例如一或多个非挥发性存储器组件),且上述至少一非挥发性存储器组件可包括复数个区块。另外,该控制器包括一处理电路,其是用来依据来自一主系统的复数个主指令来控制该控制器,以容许该主系统通过该控制器存取该非挥发性存储器。例如,该控制器从该主系统接收一写入命令,其中该写入命令指出需要将一组数据写入至该非挥发性存储器;该控制器判断一重复写入条件是否被满足,其中该重复写入条件包括:该写入命令是一先前写入命令的一重复写入命令,且该写入命令对应于和该先前写入命令相同的一相同位址与一相同长度;以及响应于该重复写入条件被满足,该控制器将该组数据存储至在该非挥发性存储器当中的一第一类型的区块中的至少一第一类型区块,以供进行数据存储加强处理,其中在该第一类型的区块中的任一区块中的一记忆细胞中所存储的一或多个比特的一第一比特数小于在该非挥发性存储器当中的一第二类型的区块中的任一区块中的一记忆细胞中所存储的多个比特的一第二比特数。
本发明的方法及相关设备能确保该记忆装置能在各种情况下妥善地运作。借助于本发明的方法及相关设备,该记忆装置不会遭受相关技术中的既有的问题。另外,实施本发明的实施例不会大幅增加额外成本。因此,相关技术的问题能被解决,而整体成本不会增加太多。相较于相关技术,本发明的方法及相关设备能在没有副作用或较不会带来副作用的情况下能达到最佳化效能。
附图说明
图1为依据本发明一实施例的一电子装置的示意图。
图2为依据本发明一实施例的一种用来进行数据存储管理以提升数据可靠度(reliability)的方法的流程图,例如该数据存储管理可借助于重复写入命令检测(repeated write command detection)来进行。
图3依据本发明一实施例绘示图2所示方法所涉及的一数据存储加强程序(datastorage enhancement procedure)的一工作流程。
其中,附图标记说明如下:
10 电子装置
20 主系统
50 主装置
52 处理器
54 电源供应电路
60 桥接装置
100 记忆装置
110 存储器控制器
112 微处理器
112C 程式码
112M 唯读存储器
114 控制逻辑电路
116 缓冲存储器
118 传输介面电路
120 非挥发性存储器
122-1、122-2~122-N 非挥发性存储器组件
120MT 管理表
S10、S12、S14、S16、S20、 步骤
S22、S24、S26、S28、S30
具体实施方式
图1为依据本发明一实施例的一种电子装置10的示意图,其中电子装置10包括一主系统(host system)20与一记忆装置100,而主系统20包括一主装置(host device)50与一桥接装置(bridge device)60。主装置50可包括:至少一处理器52(例如一或多个处理器),用来控制主装置50的操作;以及一电源供应电路54,耦接至上述至少一处理器52,用来提供电源予上述至少一处理器52、桥接装置60与记忆装置100,尤其,输出至少一驱动电压至桥接装置60、且通过桥接装置60提供一或多个驱动电压至记忆装置100(例如:通过桥接装置60输出该一或多个驱动电压至记忆装置100;或利用桥接装置60稳压(regulate)来自主装置50的上述至少一驱动电压以产生该一或多个驱动电压,以供输出至记忆装置100)。主装置50的例子可包括(但不限于):多功能移动电话(multifunctional mobile phone)、平板计算机(tablet)、可穿戴装置(wearable device)以及个人计算机(personalcomputer)诸如桌上型计算机与膝上型计算机。记忆装置100的例子可包括(但不限于):可携式记忆装置(诸如符合SD/MMC、CF、MS、XD或UFS标准的记忆卡)、固态硬盘(solid statedrive,SSD)以及各种嵌入式(embedded)记忆装置(诸如符合UFS或eMMC规格的嵌入式记忆装置)。桥接装置60的例子可包括(但不限于):记忆卡读卡机(memory card reader)、记忆装置转接器(memory device adaptor)、介接电路(interfacing circuit)等。为了便于理解,记忆装置100可用来提供存储空间给主装置50,且可通过桥接装置60从主装置50取得该一或多个驱动电压,作为记忆装置100的电源,但本发明不限于此。于某些实施例中,图1所示架构可予以变化。例如,桥接装置60可被忽略或可被整合至主装置50中。此情况下,主系统20可代表主装置50。
依据本实施例,记忆装置100可包括一控制器诸如存储器控制器110,且可还包括一非挥发性存储器(non-volatile memory,NV memory)120,其中该控制器是用来存取(access)非挥发性存储器120,且非挥发性存储器120是用来存储信息。非挥发性存储器120可包括至少一非挥发性存储器组件(NV memory element)(例如一或多个非挥发性存储器组件),诸如复数个非挥发性存储器组件122-1、122-2、…与122-N,其中符号“N”可代表大于一的正整数。例如:非挥发性存储器120可为一快闪存储器(Flash memory),而非挥发性存储器组件122-1、122-2、…与122-N可分别为复数个快闪存储器晶片(Flash memory chip;可简称为快闪晶片)或复数个快闪存储器裸晶(Flash memory die;可简称为快闪裸晶),但本发明不限于此。如图1所示,存储器控制器110可包括处理电路诸如微处理器112、存储单元诸如唯读存储器(Read Only Memory,ROM)112M、控制逻辑电路114、缓冲存储器116与传输介面电路118,其中这些组件中的至少一部分(例如一部分或全部)可通过汇流排彼此耦接。缓冲存储器116是以随机存取存储器(Random Access Memory,RAM)来实施,例如可为静态随机存取存储器(Static RAM,SRAM),其中该随机存取存储器可用来提供内部存储空间给存储器控制器110,例如可暂时地存储信息,但本发明不限于此。另外,本实施例的唯读存储器112M是用来存储一程式码112C,而微处理器112则用来执行程式码112C以控制对非挥发性存储器120的存取。请注意,程式码112C亦得存储在缓冲存储器116或任何形式的存储器内。此外,控制逻辑电路114可用来控制非挥发性存储器120。控制逻辑电路114可包括一错误更正码电路(Error Correction Code circuit,可简称为“ECC电路”;未显示于图1),其可进行错误更正码编码(ECC encoding,可简称为“ECC编码”)与错误更正码解码(ECCdecoding,可简称为“ECC解码”),以保护数据、及/或进行错误更正,而传输介面电路118可符合一特定通信标准(诸如串列高级技术附件(Serial Advanced TechnologyAttachment,SATA)标准、通用序列汇流排(Universal Serial Bus,USB)标准、快捷外设互联(Peripheral Component Interconnect Express,PCIE)标准、嵌入式多媒体记忆卡(embedded Multi Media Card,eMMC)标准、或通用快闪存储器存储(Universal FlashStorage,UFS)标准)且可依据该特定通信标准进行通信。为了便于理解,桥接装置60可用来桥接主装置50与记忆装置100,例如,在主装置50符合异于该特定通信标准的另一通信标准,但本发明不限于此。于某些例子中,主装置50也可以符合该特定通信标准,而桥接装置60可旁通(bypass)命令及数据至记忆装置100、或旁通数据至主装置50。
于本实施例中,主系统20(尤其,其内的主装置50,借助于桥接装置60)可传送复数个主命令(host command)诸如主装置命令(host device command)以及对应的逻辑位址予存储器控制器110,以间接地存取记忆装置100中的非挥发性存储器120。存储器控制器110接收该复数个主命令与逻辑位址,并将该复数个主命令分别转译成存储器操作命令(简称操作命令),再以操作命令控制非挥发性存储器120读取、写入(write)/编程(Program)非挥发性存储器120当中特定实体位址的记忆单位(memory unit)或数据页面(page),其中实体位址关联于逻辑位址。例如存储器控制器110可产生或更新至少一逻辑对实体位址映射表(logical-to-physical address mapping table)来管理实体位址与逻辑位址之间的关系。非挥发性存储器120可存储一管理表(management table)120MT,以供存储器控制器110控制记忆装置100管理存储着用某处置方式(treatment)处理过的用户数据的区块。当需要时,存储器控制器110可将管理表120MT载入缓冲存储器116或其它存储器。管理表120MT可位于非挥发性存储器组件122-1中的一预定区域,诸如一系统区(system region),但本发明不限于此。于某些实施例中,管理表120MT可位于非挥发性存储器组件122-1、122-2、…与122-N的任一者。
另外,上述至少一非挥发性存储器组件(例如该一或多个非挥发性存储器组件诸如{122-1,122-2,…,122-N})可包括复数个区块,其中存储器控制器110对非挥发性存储器120进行抹除数据的操作的最小单位可为区块,而存储器控制器110对非挥发性存储器120进行写入数据的操作的最小单位可为页面,但本发明不限于此。例如,非挥发性存储器组件122-1、122-2、…与122-N中的任一非挥发性存储器组件122-n(符号“n”可代表区间[1,N]中的任一整数)可包括一群区块,且该群区块中的一区块可包括且可记录特定数量的页面,其中存储器控制器110可依据一区块位址与一页面位址来存取该群区块中的某一区块中的某一页面。又例如,非挥发性存储器组件122-n可包括多个平面(plane),而该多个平面中的任一平面可包括一组区块诸如该群区块,其中存储器控制器110可依据一平面编号(planenumber)、一区块位址与一页面位址来存取该多个平面中的某一平面中的某一区块中的某一页面。
基于图1所示架构,记忆装置100(尤其,其内的存储器控制器110)能在各种情况下妥善地运作,以避免相关技术中的既有的问题,例如,在没有任何用于主系统20(例如:主装置50与桥接装置60的组合;或主装置50,针对“桥接装置60可被忽略或可被整合至主装置50中”的例子而言)与记忆装置100之间的装置间(inter-device)通信的额外命令的情况下。
图2为依据本发明一实施例的一种用来进行数据存储管理以提升数据可靠度(reliability)的方法的流程图,例如该数据存储管理可借助于重复写入命令检测(repeated write command detection)来进行。该方法可应用于记忆装置100以及其内的存储器控制器110,且可应用于包括主系统20与记忆装置100的电子装置10。
在步骤S10中,存储器控制器110可从主系统20接收一命令,诸如该复数个主命令的其中一个。
在步骤S12中,存储器控制器110可判断该命令是否为一写入命令。如果“是”,则存储器控制器110可执行步骤S14;如果“否”,则存储器控制器110可执行步骤S16。例如,该命令可以代表该写入命令(例如,存储器控制器110可在步骤S10中从主系统20接收该写入命令),并且该写入命令可指出需要将一组数据写入至非挥发性存储器120,但本发明不限于此。又例如,该命令可代表一读取命令,并且该读取命令可指出需要从非挥发性存储器120读取一或多组数据。
在步骤S14中,存储器控制器110可判断一重复写入条件(repeated writingcondition)是否被满足,其中该重复写入条件可包括:该写入命令是一先前写入命令的一重复写入命令,且该写入命令对应于和该先前写入命令相同的一相同位址与一相同长度。如果“是”,则存储器控制器110可执行步骤S20;如果“否”,则存储器控制器110可执行步骤S30。依据本实施例,存储器控制器110可判断该写入命令是否为该先前写入命令的下一个写入命令,尤其,可判断是否这个写入命令指出需要将具有该相同长度的于该相同位址(例如:相同逻辑位址)的数据写入至非挥发性存储器120。例如,当这个写入命令是该先前写入命令的下一个写入命令、且这个写入命令指出需要于该相同位址(例如:相同逻辑位址)写入具有该相同长度的数据,存储器控制器110可判断该重复写入条件被满足,且因此进入步骤S20;否则,存储器控制器110可判断该重复写入条件未被满足,且因此进入步骤S30;但本发明不限于此。
在步骤S16中,当该命令不是该写入命令(例如:该命令可代表该读取命令),存储器控制器110可进行其它处理,而非写入。
在步骤S20中,响应于该重复写入条件被满足,存储器控制器110可执行一数据存储加强程序(data storage enhancement procedure),以使用在非挥发性存储器120当中的一第一类型的区块(first type of blocks)中的至少一第一类型区块(first typeblock)来进行数据存储加强处理。尤其,在该第一类型的区块中的任一区块中的一记忆细胞中所存储的一或多个比特(例如:BITCNT(1)个比特)的一第一比特数BITCNT(1)小于在非挥发性存储器120当中的一第二类型的区块(second type of blocks)中的任一区块中的一记忆细胞中所存储的多个比特(例如:BITCNT(2)个比特)的一第二比特数BITCNT(2)。举例来说,该第一类型的区块可包括一群单阶细胞(Single Level Cell,简称SLC)区块,而该第二类型的区块可包括一群三阶细胞(Triple Level Cell,简称TLC)区块,其中第一比特数BITCNT(1)与第二比特数BITCNT(2)可分别等于一与三,但本发明不限于此。
在步骤S30中,响应于该重复写入条件未被满足,存储器控制器110可将数据(例如:该组数据)存储至在非挥发性存储器120当中的该第二类型的区块中的至少一第二类型区块(second type block)。
基于图2所示工作流程,步骤S14的操作(例如:判断该重复写入条件是否被满足的操作)可被执行多次以分别产生多个判断结果诸如一第一判断结果与一第二判断结果,其中该第一判断结果可指出该重复写入条件被满足,而该第二判断结果可指出该重复写入条件未被满足。举例来说,步骤S20的操作(例如:执行该数据存储加强程序以进行该数据存储加强处理的操作)可以是响应于该第一判断结果来执行。对于另一例子而言,步骤S30的操作(例如:将该组数据存储至在非挥发性存储器120当中的该第二类型的区块中的上述至少一第二类型区块的操作)可以是响应于该第二判断结果来执行。请注意,在步骤S14所述的重复写入条件被满足的情况下,存储器控制器110可在步骤S20所述的数据存储加强程序的期间针对该组数据进行该数据存储加强处理,以在具备较高可靠度的该第一类型的区块中的上述至少一第一类型区块中保护该组数据。
为了更好地理解,该方法可用图2所示工作流程来说明,但本发明不限于此。依据某些实施例,一个或多个步骤可于图2所示工作流程中增加、删除或修改。
依据某些实施例,该第一类型的区块及/或该第二类型的区块的实施方式可予以变化。例如,该第一类型的区块可包括该群SLC区块,而该第二类型的区块可包括一群四阶细胞(Quadruple Level Cell,简称QLC)区块,其中第一比特数BITCNT(1)与第二比特数BITCNT(2)可分别等于一与四。又例如,该第一类型的区块可包括该群SLC区块,而该第二类型的区块可包括一群多阶细胞(Multiple Level Cell,简称MLC)区块,其中第一比特数BITCNT(1)可等于一,而第二比特数BITCNT(2)可等于或大于二(例如:依照针对MLC的不同的观点而异)。于某些例子中,该第一类型的区块可包括该群SLC区块,而该第二类型的区块可包括多群较高阶细胞(higher level cell)区块中的任一群,且该多群较高阶细胞区块可包括该群MLC区块,尤其,可包括该群TLC区块、该群QLC区块等,其中第一比特数BITCNT(1)可等于一,而第二比特数BITCNT(2)可等于从一序列{2,3,4,...}选择的对应的比特数。于某些其它例子中,该第一类型的区块可包括一系列群中的一第一群,而该系列群可包括该群SLC区块、该群MLC区块、该群TLC区块、该群QLC区块等,并且该第二类型的区块可包括该系列群中的一第二群,诸如在该系列群中的在该第一群以后的后续群中的一个,其中第一比特数BITCNT(1)可等于从对应于该系列群的一序列{1,2,3,4,...}选择的某一比特数,而第二比特数BITCNT(2)可等于从序列{1,2,3,4,...}选择、且大于第一比特数BITCNT(1)的另一比特数。
图3依据本发明一实施例绘示图2所示方法所涉及的该数据存储加强程序的一工作流程。
在步骤S22中,响应于该重复写入条件被满足,存储器控制器110可将该组数据存储至在非挥发性存储器120当中的该第一类型的区块中的上述至少一第一类型区块,以供进行该数据存储加强处理。例如,步骤S22的操作可以是响应于该第一判断结果来执行。
在步骤S24中,存储器控制器110可判断对应于该数据存储加强处理的管理表120MT是否已满,以供为该数据存储加强处理管理在非挥发性存储器120当中的一第一存储池(storage pool),其中该第一存储池可包括在非挥发性存储器120当中的该第一类型的区块的至少一部分区块(例如:一部分或全部区块),且管理表120MT的表内容(tablecontent)可对应于该第一类型的区块的上述至少一部分区块,尤其,可代表该第一类型的区块的上述至少一部分区块,但本发明不限于此。如果“是”,则存储器控制器110可执行步骤S26;如果“否”,则存储器控制器110可执行步骤S28。
在步骤S26中,响应于管理表120MT已满,存储器控制器110可从该第一存储池的一或多个旧成员取得至少一组先前数据(例如:一或多组先前数据),将上述至少一组先前数据存储至该第二类型的区块中的一或多个第二类型区块,且从管理表120MT移除该一或多个旧成员的区块信息(例如:一或多个实体位址),以将该一或多个旧成员从该第一存储池清除(purge),其中该一或多个旧成员可代表该第一类型的区块中的一或多个第一类型区块。
在步骤S28中,存储器控制器110可记录该第一类型的区块的上述至少一第一类型区块的区块信息(例如:至少一实体位址)至管理表120MT,以将该第一类型的区块的上述至少一第一类型区块辨识为该第一存储池的至少一成员。
基于图3所示工作流程,步骤S24的操作(例如:判断对应于该数据存储加强处理的管理表120MT是否已满的操作)可被执行多次以分别产生多个判断结果诸如一第三判断结果与一第四判断结果,其中该第三判断结果可指出管理表120MT已满,而该第四判断结果可指出管理表120MT并非已满。举例来说,步骤S26的操作(例如:从该第一存储池的该一或多个旧成员取得上述至少一组先前数据、将上述至少一组先前数据存储至该第二类型的区块中的该一或多个第二类型区块、且从管理表120MT移除该一或多个旧成员的该区块信息的操作)可以是响应于该第三判断结果来执行。对于另一例子而言,步骤S28的操作(例如:记录该第一类型的区块的上述至少一第一类型区块的该区块信息至管理表120MT的操作)可以是响应于该第四判断结果来执行。请注意,不论步骤S24所述的管理表120MT已满或并非已满,存储器控制器110可于步骤S28中记录该第一类型的区块的上述至少一第一类型区块的该区块信息至管理表120MT,以将该第一类型的区块的上述至少一第一类型区块加入该第一存储池,其中存储器控制器110可将该组数据存储至具备较高可靠度的该第一类型的区块中的上述至少一第一类型区块中以保护该组数据。于是,管理表120MT的这些表内容可指出该第一类型的区块的上述至少一部分区块中所存储的数据是被该数据存储加强处理所保护。
为了更好地理解,该方法(尤其,该数据存储加强程序)可用图3所示工作流程来说明,但本发明不限于此。依据某些实施例,一个或多个步骤可于图3所示工作流程中增加、删除或修改。
依据某些实施例,存储器控制器110可利用对应于该第一类型的区块的一第一区块池(block pool)(例如:对应于该群SLC区块的一SLC池)进行步骤S20所述的数据存储加强处理,其中该第一区块池的任一区块中所存储的数据是被该数据存储加强处理所保护,且对应于该第二类型的区块的一第二区块池(例如:对应于该群TLC区块的一TLC池、对应于该群QLC区块的一QLC池等)的任一区块中所存储的数据并未被该数据存储加强处理所保护,但本发明不限于此。
针对步骤S14所述的重复写入条件的某些实施细节可进一步说明如下。依据某些实施例,在步骤S10所述命令代表该写入命令并且后续进入步骤S12与S14的情况下,存储器控制器110可进行针对该组数据的一额外检查,以确保步骤S14的操作的正确性。在步骤S14中,存储器控制器110可进一步进行针对该组数据的一重复数据检测以产生一重复数据检测结果,其中该重复数据检测结果可指出按照这个写入命令所请求的将被写入的这组数据是否和先前写入数据诸如按照该先前写入命令所请求的已被写入的数据相同。例如,当这个写入命令是该先前写入命令的下一个写入命令、且这个写入命令指出需要于该相同位址(例如:相同逻辑位址)写入具有该相同长度的数据(例如:该组数据),并且该重复数据检测结果指出按照这个写入命令所请求的将被写入的这组数据和该先前写入数据(例如:按照该先前写入命令所请求的已被写入的数据)相同,则存储器控制器110可判断该重复写入条件被满足,且因此进入步骤S20;否则,存储器控制器110可判断该重复写入条件未被满足,且因此进入步骤S30。于是,该重复写入条件可还包括:该重复数据检测结果指出按照这个写入命令所请求的将被写入的这组数据和该先前写入数据(例如:按照该先前写入命令所请求的已被写入的数据)相同。
依据某些实施例,进行该重复数据检测可通过检测该组数据的特征信息诸如该组数据的循环冗余校验(Cyclic Redundancy Check,简称CRC)码、哈希值(hash value)等方式来实施。尤其,在进行该重复数据检测的期间,存储器控制器110可检测该组数据的该特征信息(例如:其CRC码、哈希值等),并且将该组数据的该特征信息和先前特征信息进行比较以判断该组数据的该特征信息是否和该先前特征信息相同,以产生该重复数据检测结果。例如,存储器控制器110可预先将该先前写入数据的特征信息(例如:该先前写入命令的数据的CRC码、哈希值等)暂时地存储在缓冲存储器116中以作为该先前特征信息,但本发明不限于此。又例如,存储器控制器110可预先将该先前写入数据的该特征信息(例如:该先前写入命令的该数据的该CRC码、该哈希值等)暂时地存储在记忆装置100的任何其它存储器中以作为该先前特征信息。再例如,存储器控制器110可从非挥发性存储器120读取该先前写入数据的该特征信息(例如:该先前写入命令的该数据的该CRC码、该哈希值等)以作为该先前特征信息。
依据某些实施例,存储器控制器110可自行计算该组数据的该特征信息(例如:其CRC码、哈希值等)以及该先前特征信息(例如:该先前写入命令的该数据的该CRC码、该哈希值等),但本发明不限于此。于某些实施例中,主系统20(例如:主装置50)可预先计算该组数据的该特征信息(例如:其CRC码、哈希值等)以及该先前特征信息(例如:该先前写入命令的该数据的该CRC码、该哈希值等)并且将它们发送给记忆装置100,例如,以作为各自的数据的附加信息(attached information),因此,存储器控制器110可取得该组数据的该特征信息以及该先前特征信息。
依据某些实施例,进行该重复数据检测可通过将该组数据和该先前写入数据进行比较的方式来实施。例如,存储器控制器110可将按照该写入命令(例如:目前写入命令)所请求的将被写入的该组数据和该先前写入数据进行比较,而该先前写入数据仍可以被缓冲在记忆装置100的某一缓冲器中,其中这个缓冲器可用存储器控制器110的一外部存储器诸如在记忆装置100中的一动态随机存取存储器(Dynamic RAM,DRAM)来实现,但本发明不限于此。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (20)
1.一种用来进行数据存储管理以提升数据可靠度的方法,其特征在于,该方法是应用于一记忆装置,该记忆装置包括一非挥发性存储器,该非挥发性存储器包括至少一非挥发性存储器组件,所述至少一非挥发性存储器组件包括复数个区块,该方法包括:
从一主系统接收一写入命令,其中该写入命令指出需要将一组数据写入至该非挥发性存储器;
判断一重复写入条件是否被满足,其中该重复写入条件包括:该写入命令是一先前写入命令的一重复写入命令,且该写入命令对应于和该先前写入命令相同的一相同位址与一相同长度;以及
响应于该重复写入条件被满足,将该组数据存储至在该非挥发性存储器当中的一第一类型的区块中的至少一第一类型区块,以供进行数据存储加强处理,其中在该第一类型的区块中的任一区块中的一记忆细胞中所存储的一或多个比特的一第一比特数小于在该非挥发性存储器当中的一第二类型的区块中的任一区块中的一记忆细胞中所存储的多个比特的一第二比特数。
2.如权利要求1所述的方法,其特征在于,判断该重复写入条件是否被满足的步骤被执行多次以分别产生一第一判断结果与一第二判断结果,其中该第一判断结果指出该重复写入条件被满足,而该第二判断结果指出该重复写入条件未被满足;将该组数据存储至在该非挥发性存储器当中的该第一类型的区块中的所述至少一第一类型区块的步骤是响应于该第一判断结果来执行;以及该方法还包括:
响应于该第二判断结果,将该组数据存储至在该非挥发性存储器当中的该第二类型的区块中的至少一第二类型区块。
3.如权利要求1所述的方法,其特征在于,还包括:
在将该组数据存储至在该非挥发性存储器当中的该第一类型的区块中的所述至少一第一类型区块的步骤被执行后,判断对应于该数据存储加强处理的一管理表是否已满,以供为该数据存储加强处理管理在该非挥发性存储器当中的一第一存储池,其中该第一存储池包括在该非挥发性存储器当中的该第一类型的区块的至少一部分区块,且该管理表的表内容对应于该第一类型的区块的所述至少一部分区块。
4.如权利要求3所述的方法,其特征在于,还包括:
响应于该管理表并非已满,记录该第一类型的区块的所述至少一第一类型区块的区块信息至该管理表,以将该第一类型的区块的所述至少一第一类型区块辨识为该第一存储池的至少一成员。
5.如权利要求3所述的方法,其特征在于,还包括:
响应于该管理表已满,从该第一存储池的一或多个旧成员取得至少一组先前数据,将所述至少一组先前数据存储至该第二类型的区块中的一或多个第二类型区块,且从该管理表移除该一或多个旧成员的区块信息,以将该一或多个旧成员从该第一存储池清除,其中该一或多个旧成员代表该第一类型的区块中的一或多个第一类型区块。
6.如权利要求5所述的方法,其特征在于,还包括:
记录该第一类型的区块的所述至少一第一类型区块的区块信息至该管理表,以将该第一类型的区块的所述至少一第一类型区块辨识为该第一存储池的至少一成员。
7.如权利要求3所述的方法,其特征在于,该管理表的所述表内容指出该第一类型的区块的所述至少一部分区块中所存储的数据是被该数据存储加强处理所保护。
8.如权利要求1所述的方法,其特征在于,该第一类型的区块包括一群单阶细胞区块。
9.如权利要求8所述的方法,其特征在于,该第二类型的区块包括多群较高阶细胞区块中的任一群,且该多群较高阶细胞区块包括一群三阶细胞区块与一群四阶细胞区块。
10.如权利要求1所述的方法,其特征在于,还包括:
利用对应于该第一类型的区块的一第一区块池进行该数据存储加强处理,其中该第一区块池的任一区块中所存储的数据是被该数据存储加强处理所保护,且对应于该第二类型的区块的一第二区块池的任一区块中所存储的数据并未被该数据存储加强处理所保护。
11.一种记忆装置,其特征在于,包括:
一非挥发性存储器,用来存储信息,其中该非挥发性存储器包括至少一非挥发性存储器组件,且所述至少一非挥发性存储器组件包括复数个区块;以及
一控制器,耦接至该非挥发性存储器,用来控制该记忆装置的操作,其中该控制器包括:
一处理电路,用来依据来自一主系统的复数个主指令来控制该控制器,以容许该主系统通过该控制器存取该非挥发性存储器,其中:
该控制器从该主系统接收一写入命令,其中该写入命令指出需要将一组数据写入至该非挥发性存储器;
该控制器判断一重复写入条件是否被满足,其中该重复写入条件包括:该写入命令是一先前写入命令的一重复写入命令,且该写入命令对应于和该先前写入命令相同的一相同位址与一相同长度;以及
响应于该重复写入条件被满足,该控制器将该组数据存储至在该非挥发性存储器当中的一第一类型的区块中的至少一第一类型区块,以供进行数据存储加强处理,其中在该第一类型的区块中的任一区块中的一记忆细胞中所存储的一或多个比特的一第一比特数小于在该非挥发性存储器当中的一第二类型的区块中的任一区块中的一记忆细胞中所存储的多个比特的一第二比特数。
12.如权利要求11所述的记忆装置,其特征在于,判断该重复写入条件是否被满足的操作被执行多次以分别产生一第一判断结果与一第二判断结果,其中该第一判断结果指出该重复写入条件被满足,而该第二判断结果指出该重复写入条件未被满足;将该组数据存储至在该非挥发性存储器当中的该第一类型的区块中的所述至少一第一类型区块的操作是响应于该第一判断结果来执行;以及响应于该第二判断结果,该控制器将该组数据存储至在该非挥发性存储器当中的该第二类型的区块中的至少一第二类型区块。
13.如权利要求11所述的记忆装置,其特征在于,在将该组数据存储至在该非挥发性存储器当中的该第一类型的区块中的所述至少一第一类型区块的操作被执行后,该控制器判断对应于该数据存储加强处理的一管理表是否已满,以供为该数据存储加强处理管理在该非挥发性存储器当中的一第一存储池,其中该第一存储池包括在该非挥发性存储器当中的该第一类型的区块的至少一部分区块,且该管理表的表内容对应于该第一类型的区块的所述至少一部分区块。
14.如权利要求13所述的记忆装置,其特征在于,响应于该管理表并非已满,该控制器记录该第一类型的区块的所述至少一第一类型区块的区块信息至该管理表,以将该第一类型的区块的所述至少一第一类型区块辨识为该第一存储池的至少一成员。
15.如权利要求13所述的记忆装置,其特征在于,响应于该管理表已满,该控制器从该第一存储池的一或多个旧成员取得至少一组先前数据,将所述至少一组先前数据存储至该第二类型的区块中的一或多个第二类型区块,且从该管理表移除该一或多个旧成员的区块信息,以将该一或多个旧成员从该第一存储池清除,其中该一或多个旧成员代表该第一类型的区块中的一或多个第一类型区块。
16.如权利要求15所述的记忆装置,其特征在于,该控制器记录该第一类型的区块的所述至少一第一类型区块的区块信息至该管理表,以将该第一类型的区块的所述至少一第一类型区块辨识为该第一存储池的至少一成员。
17.如权利要求13所述的记忆装置,其特征在于,该管理表的所述表内容指出该第一类型的区块的所述至少一部分区块中所存储的数据是被该数据存储加强处理所保护。
18.如权利要求11所述的记忆装置,其特征在于,该第一类型的区块包括一群单阶细胞区块。
19.一种包括如权利要求11所述的记忆装置的电子装置,其特征在于,该电子装置还包括:
该主系统,包括:
一主装置,耦接至该记忆装置,其中该主装置包括:
至少一处理器,用来控制该主装置的操作;以及
一电源供应电路,耦接至该至少一处理器,用来提供电源给该至少一处理器以及该记忆装置;
其中该记忆装置提供存储空间给该主装置。
20.一种记忆装置的控制器,其特征在于,该记忆装置包括该控制器以及一非挥发性存储器,该非挥发性存储器包括至少一非挥发性存储器组件,
所述至少一非挥发性存储器组件包括复数个区块,该控制器包括:
一处理电路,用来依据来自一主系统的复数个主指令来控制该控制器,
以容许该主系统通过该控制器存取该非挥发性存储器,其中:
该控制器从该主系统接收一写入命令,其中该写入命令指出需要将一组数据写入至该非挥发性存储器;
该控制器判断一重复写入条件是否被满足,其中该重复写入条件包括:该写入命令是一先前写入命令的一重复写入命令,且该写入命令对应于和该先前写入命令相同的一相同位址与一相同长度;以及
响应于该重复写入条件被满足,该控制器将该组数据存储至在该非挥发性存储器当中的一第一类型的区块中的至少一第一类型区块,以供进行数据存储加强处理,其中在该第一类型的区块中的任一区块中的一记忆细胞中所存储的一或多个比特的一第一比特数小于在该非挥发性存储器当中的一第二类型的区块中的任一区块中的一记忆细胞中所存储的多个比特的一第二比特数。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/795,536 | 2020-02-19 | ||
US16/795,536 US20210255783A1 (en) | 2020-02-19 | 2020-02-19 | Method and apparatus for performing data storage management to enhance data reliability with aid of repeated write command detection |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113360303A true CN113360303A (zh) | 2021-09-07 |
Family
ID=77273484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110091156.5A Pending CN113360303A (zh) | 2020-02-19 | 2021-01-22 | 进行数据存储管理以提升数据可靠度的方法以及相关设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20210255783A1 (zh) |
CN (1) | CN113360303A (zh) |
TW (2) | TWI739440B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7621918B2 (ja) * | 2021-09-17 | 2025-01-27 | キオクシア株式会社 | メモリシステム及びメモリ制御方法 |
US11606104B1 (en) * | 2021-12-08 | 2023-03-14 | Amazon Technologies, Inc. | Data integrity protection |
US12230232B2 (en) * | 2022-08-09 | 2025-02-18 | Micron Technology, Inc. | Configurable types of write operations |
US20240329863A1 (en) * | 2023-03-30 | 2024-10-03 | Microsoft Technology Licensing, Llc | Customizable solid-state drive for improved capacity and endurance |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5621885A (en) * | 1995-06-07 | 1997-04-15 | Tandem Computers, Incorporated | System and method for providing a fault tolerant computer program runtime support environment |
CN101483067A (zh) * | 2008-01-11 | 2009-07-15 | 群联电子股份有限公司 | 快闪存储器数据写入方法及其快闪存储器控制器 |
US20090300269A1 (en) * | 2008-05-28 | 2009-12-03 | Radke William H | Hybrid memory management |
CN101625897A (zh) * | 2008-07-11 | 2010-01-13 | 群联电子股份有限公司 | 用于快闪存储器的数据写入方法、储存系统与控制器 |
TW201030521A (en) * | 2009-02-10 | 2010-08-16 | Phison Electronics Corp | Multi level cell NAND flash memory storage system, and controller and accessing method thereof |
US20150039811A1 (en) * | 2013-08-05 | 2015-02-05 | Silicon Motion Inc. | Method for managing memory apparatus, associated memory apparatus thereof and associated controller thereof |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104346288B (zh) * | 2013-08-05 | 2017-07-28 | 慧荣科技股份有限公司 | 用来管理一记忆装置的方法以及记忆装置与控制器 |
TWI502591B (zh) * | 2013-08-05 | 2015-10-01 | Silicon Motion Inc | 用來管理一記憶裝置之方法以及記憶裝置與控制器 |
-
2020
- 2020-02-19 US US16/795,536 patent/US20210255783A1/en not_active Abandoned
- 2020-05-22 TW TW109117219A patent/TWI739440B/zh active
- 2020-05-22 TW TW110127864A patent/TWI782644B/zh active
-
2021
- 2021-01-22 CN CN202110091156.5A patent/CN113360303A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5621885A (en) * | 1995-06-07 | 1997-04-15 | Tandem Computers, Incorporated | System and method for providing a fault tolerant computer program runtime support environment |
CN101483067A (zh) * | 2008-01-11 | 2009-07-15 | 群联电子股份有限公司 | 快闪存储器数据写入方法及其快闪存储器控制器 |
US20090300269A1 (en) * | 2008-05-28 | 2009-12-03 | Radke William H | Hybrid memory management |
CN101625897A (zh) * | 2008-07-11 | 2010-01-13 | 群联电子股份有限公司 | 用于快闪存储器的数据写入方法、储存系统与控制器 |
TW201030521A (en) * | 2009-02-10 | 2010-08-16 | Phison Electronics Corp | Multi level cell NAND flash memory storage system, and controller and accessing method thereof |
US20150039811A1 (en) * | 2013-08-05 | 2015-02-05 | Silicon Motion Inc. | Method for managing memory apparatus, associated memory apparatus thereof and associated controller thereof |
CN104346292A (zh) * | 2013-08-05 | 2015-02-11 | 慧荣科技股份有限公司 | 用来管理一记忆装置的方法、记忆装置与控制器 |
Also Published As
Publication number | Publication date |
---|---|
TWI782644B (zh) | 2022-11-01 |
TW202209106A (zh) | 2022-03-01 |
TWI739440B (zh) | 2021-09-11 |
US20210255783A1 (en) | 2021-08-19 |
TW202133166A (zh) | 2021-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11449435B2 (en) | Method for performing access management in a memory device, associated memory device and controller thereof, and associated electronic device | |
TWI782644B (zh) | 用來進行資料儲存管理以提升資料可靠度之方法、記憶裝置及其控制器以及電子裝置 | |
US8417879B2 (en) | Method for suppressing errors, and associated memory device and controller thereof | |
US9582224B2 (en) | Memory control circuit unit, memory storage apparatus and data accessing method | |
CN110837340B (zh) | 闪存控制器、管理闪存模块的方法及相关的电子装置 | |
US11294589B2 (en) | Method for performing access control in a memory device, associated memory device and controller thereof | |
CN107423231B (zh) | 用来管理一记忆装置的方法以及记忆装置与控制器 | |
CN113535074B (zh) | 用来针对非易失性存储器进行区块管理的方法以及设备 | |
US20170052704A1 (en) | Memory management method, memory control circuit unit and memory storage device | |
TWI693520B (zh) | 用來於一記憶裝置中進行系統備份的方法、相關記憶裝置及其控制器、以及相關電子裝置 | |
CN103914391A (zh) | 数据读取方法、存储器控制器与存储器存储装置 | |
US11210028B2 (en) | Method for accessing flash memory module and associated flash memory controller and electronic device | |
US11662940B2 (en) | Data storage device and data processing method for restoring MLC/TLC memory to avoid degradation of access performance of a memory device caused by word line short | |
US11809314B2 (en) | Method and apparatus for performing access control of memory device with aid of multi-stage garbage collection management | |
CN112084118A (zh) | 数据存储装置及其操作方法 | |
US11704054B1 (en) | Method and apparatus for performing access management of memory device with aid of buffer usage reduction control | |
US20240028198A1 (en) | Method and apparatus for performing data retention management of memory device with aid of pre-shutdown control | |
US10210939B1 (en) | Solid state storage device and data management method | |
TW202405684A (zh) | 借助針對性保護控制來進行記憶體裝置的資料管理的方法、記憶體裝置、電子裝置以及記憶體裝置的記憶體控制器 | |
US10169224B2 (en) | Data protecting method for preventing received data from losing, memory storage apparatus and memory control circuit unit | |
CN112015339A (zh) | 一种存储器的数据保存系统,保存方法及存储系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210907 |
|
WD01 | Invention patent application deemed withdrawn after publication |