CN104346288A - 用来管理一记忆装置的方法以及记忆装置与控制器 - Google Patents
用来管理一记忆装置的方法以及记忆装置与控制器 Download PDFInfo
- Publication number
- CN104346288A CN104346288A CN201410272738.3A CN201410272738A CN104346288A CN 104346288 A CN104346288 A CN 104346288A CN 201410272738 A CN201410272738 A CN 201410272738A CN 104346288 A CN104346288 A CN 104346288A
- Authority
- CN
- China
- Prior art keywords
- data
- group
- block
- volatile memory
- write
- 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
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000003860 storage Methods 0.000 claims abstract description 60
- 238000012544 monitoring process Methods 0.000 claims abstract description 9
- 230000005055 memory storage Effects 0.000 claims description 50
- 238000012545 processing Methods 0.000 claims description 26
- 238000012163 sequencing technique Methods 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 8
- 230000009183 running Effects 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 230000003068 static effect Effects 0.000 description 4
- 239000007787 solid Substances 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
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/0207—Addressing or allocation; Relocation with multidimensional access, e.g. row/column, matrix
-
- 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
-
- 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
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- 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
- 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
Abstract
本发明公开了一种用来管理一记忆装置的方法以及其相关的记忆装置与控制器,所述方法包括有下列步骤:将接收自一主装置的数据暂时地储存于所述控制器中的一挥发性存储器作为接收数据,并动态地监控所述接收数据的数据量以决定是否立即将所述接收数据写入至少一非挥发性存储器组件;以及当决定立即将所述接收数据写入所述至少一非挥发性存储器组件时,将所述接收数据直接写入一特定非挥发性存储器组件当中被组态成多阶细胞记忆区块的一特定区块,而非通过先将所述接收数据暂时地写入被组态成单阶细胞记忆区块的任何其它区块来间接地写入所述特定区块。本发明可省下单阶细胞记忆区块所占用的储存空间,以提供更多的多阶细胞记忆区块。
Description
技术领域
本发明是涉及闪存(Flash Memory)的控制,尤指一种用来管理一记忆装置的方法以及其相关的记忆装置与控制器。
背景技术
近年来由于闪存的技术不断地发展,各种可携式记忆装置(例如:符合SD/MMC、CF、MS、XD标准的记忆卡)被广泛地实施于诸多应用中。因此,这些可携式记忆装置中的闪存的访问控制遂成为相当热门的议题。
以常用的NAND型闪存而言,其主要可区分为单阶细胞(Single Level Cell,SLC)与多阶细胞(Multiple Level Cell,MLC)两大类的闪存。单阶细胞闪存中的每个被当作记忆细胞(Memory Cell;亦可称为「记忆单元」)的晶体管只有两种电荷值,分别用来表示逻辑值0与逻辑值1。另外,多阶细胞闪存中的每个被当作记忆细胞的晶体管的储存能力则被充分利用,是采用较高的电压来驱动,以通过不同级别的电压在一个晶体管中记录多个位的信息(例如:00、01、11、10);理论上,多阶细胞闪存的记录密度可以达到单阶细胞闪存的记录密度的两倍以上,这对于曾经在发展过程中遇到瓶颈的NAND型闪存的相关产业而言,是非常好的消息。
相较于单阶细胞闪存,由于多阶细胞闪存的价格较便宜,并且在有限的空间里可提供较大的容量,故多阶细胞闪存很快地成为市面上的可携式记忆装置竞相采用的主流。依据现有技术,由于某些类型的多阶细胞闪存的运作复杂,故传统的存储器控制器会将多阶细胞闪存内的一部分实体区块组态成单阶细胞记忆区块,以供接收来自主装置(Host Device)的写入数据。然而,某些问题就产生了。例如:由于多阶细胞闪存内的一部分实体区块被组态成单阶细胞记忆区块,多阶细胞闪存内可供用来作为多阶细胞记忆区块的实体区块的数量就减少了,使得传统的记忆装置的整体储存容量减少了。又例如:传统的存储器控制器先将接收数据暂时地写入单阶细胞记忆区块,再将数据从单阶细胞记忆区块收集到多阶细胞记忆区块,其中这些单阶细胞记忆区块的储存空间很容易用完,故传统的存储器控制器需要频繁地抹除这些单阶细胞记忆区块。于是,传统的存储器控制器的工作负荷大幅地增加了,且这些额外的运作需要额外的处理时间,使得传统的记忆装置的整体效能变差。因此,需要一种新颖的方法来加强控管闪存的数据存取,以在不产生副作用(例如:储存数据错误)的状况下提升整体效能。
发明内容
因此,本发明的目的的一在于公开一种用来管理一记忆装置的方法以及其相关的记忆装置与控制器,以解决上述问题。
本发明的另一目的在于公开一种用来管理一记忆装置的方法以及其相关的记忆装置与控制器,以提升记忆装置的运作效能。
本发明的至少一较佳实施例中公开一种用来管理一记忆装置的方法,所述记忆装置包括至少一非挥发性(Non-volatile,NV)存储器组件,每一非挥发性存储器组件包括多个区块(Block),所述方法是应用于所述记忆装置中的一控制器,所述控制器是用来控制所述至少一非挥发性存储器组件,所述方法包括有下列步骤:将接收自一主装置(Host Device)的数据暂时地储存于所述控制器中的一挥发性存储器作为接收数据,并动态地监控所述接收数据的数据量以决定是否立即将所述接收数据写入所述至少一非挥发性存储器组件,其中接收自所述主装置的至少一写入指令指出所述主装置要求写入所述数据;以及当决定立即将所述接收数据写入所述至少一非挥发性存储器组件时,将所述接收数据直接写入所述至少一非挥发性存储器组件中的一特定非挥发性存储器组件当中被组态成多阶细胞(Multiple Level Cell,MLC)记忆区块的一特定区块,而非通过先将所述接收数据暂时地写入被组态成单阶细胞(Single Level Cell,SLC)记忆区块的任何其它区块来间接地将所述接收数据写入所述特定区块。
本发明在公开上述方法的同时,亦对应地提供一种记忆装置,包括有:至少一非挥发性存储器组件,每一非挥发性存储器组件包括多个区块;以及一控制器,用来控制所述至少一非挥发性存储器组件,所述控制器包括一处理单元,以依据内嵌于所述处理单元或接收自所述处理单元之外的一程序代码来管理所述记忆装置。另外,所述控制器将接收自一主装置的数据暂时地储存于所述控制器中的一挥发性存储器作为接收数据,并动态地监控所述接收数据的数据量以决定是否立即将所述接收数据写入所述至少一非挥发性存储器组件,其中接收自所述主装置的至少一写入指令指出所述主装置要求写入所述数据。此外,当决定立即将所述接收数据写入所述至少一非挥发性存储器组件时,所述控制器将所述接收数据直接写入所述至少一非挥发性存储器组件中的一特定非挥发性存储器组件当中被组态成多阶细胞记忆区块的一特定区块,而非通过先将所述接收数据暂时地写入被组态成单阶细胞记忆区块的任何其它区块来间接地将所述接收数据写入所述特定区块。
本发明在公开上述方法的同时,亦对应地提供一种记忆装置的控制器,所述记忆装置包括至少一非挥发性存储器组件,每一非挥发性存储器组件包括多个区块,所述控制器包括有:一处理单元,用来依据内嵌于所述处理单元或接收自所述处理单元之外的一程序代码来管理所述记忆装置。另外,所述控制器将接收自一主装置的数据暂时地储存于所述控制器中的一挥发性存储器作为接收数据,并动态地监控所述接收数据的数据量以决定是否立即将所述接收数据写入所述至少一非挥发性存储器组件,其中接收自所述主装置的至少一写入指令指出所述主装置要求写入所述数据。此外,当决定立即将所述接收数据写入所述至少一非挥发性存储器组件时,所述控制器将所述接收数据直接写入所述至少一非挥发性存储器组件中的一特定非挥发性存储器组件当中被组态成多阶细胞记忆区块的一特定区块,而非通过先将所述接收数据暂时地写入被组态成单阶细胞记忆区块的任何其它区块来间接地将所述接收数据写入所述特定区块。
本发明的好处的一是,相较于现有技术,本发明的方法、记忆装置、与控制器可省下单阶细胞记忆区块所占用的储存空间,以提供更多的多阶细胞记忆区块。因此,本发明提供较现有技术更高的储存容量。
本发明的另一好处是,相较于现有技术,本发明的方法、记忆装置、与控制器可大幅地省下先将接收数据暂时地写入单阶细胞记忆区块再将数据从单阶细胞记忆区块收集到多阶细胞记忆区块的时间,还可省下频繁地抹除单阶细胞记忆区块的时间。因此,本发明提供较现有技术更佳的效能。
附图说明
图1为依据本发明一第一实施例的一种记忆装置的示意图。
图2绘示本发明的一实施例中关于图1所示的非挥发性存储器组件中的一者的内容安排,其中所述非挥发性存储器组件在本实施例中是快闪芯片。
图3绘示本发明的另一实施例中关于图1所示的非挥发性存储器组件中的一者的内容安排,其中所述非挥发性存储器组件在本实施例中是快闪芯片。
图4为依据本发明一实施例的一种用来管理一记忆装置的方法。
图5绘示图4所示的方法在一实施例中所涉及的控制方案。
图6绘示图5所示的控制方案的工作流程。
图7绘示图4所示的方法在另一实施例中所涉及的控制方案。
其中,附图标记说明如下:
100 记忆装置
110 处理单元
120 挥发性存储器
130 传输接口
140_0,140_1,…,140_N 非挥发性存储器组件
150 总线
200 用来管理一记忆装置的方法
300 控制方案的工作流程
210,220,
310,312,320,322,330,332 步骤
BLK(0),BLK(1),BLK(2),…,
BLK(M),BLK(m) 区块
CHP(n) 快闪芯片
Data(0),Data(1),Data(2),
Data(3),Data(4),Data(5),
Data(6),Data(7),Data(8),… 数据
Page(0),Page(1),Page(2),
Page(3),Page(4),Page(5),
Page(6),Page(7),Page(8),…,
Page(189),Page(190),Page(191) 页
Page(63) 页
SEC(0),SEC(1),SEC(2),SEC(3) 区段
WL0,WL1,WL2,…,WL63 字线
具体实施方式
请参考图1,其绘示依据本发明一第一实施例的一种记忆装置100的示意图。记忆装置100包括:一处理单元110,一挥发性(Volatile)存储器120,一传输接口130,多个非挥发性(Non-volatile,NV)存储器组件140_0、140_1、…、与140_N(符号「N」代表一正整数)诸如(N+1)个快闪芯片,以及一总线150。在典型状况下,在传输接口130耦接至一主装置(未显示于图1)之后,所述主装置可通过传输接口130来存取(Access)记忆装置100。举例来说,所述主装置可代表一个人计算机,例如一笔记本计算机或一台式计算机。
处理单元110可依据内嵌于处理单元110中或接收自处理单元110之外的程序代码(未显示)来管理记忆装置100。例如:所述程序代码可为内嵌于处理单元110的硬件码,尤其是一只读存储器码(ROM code)。又例如:所述程序代码可为接收自处理单元110之外的韧体码。尤其是,处理单元110是用来控制挥发性存储器120、传输接口130、非挥发性存储器组件140_0、140_1、…、与140_N、以及总线150。本实施例的处理单元110可为一高级缩减指令集计算机机器(Advanced Reduced Instruction Set Computer Machine,Advanced RISC Machine,ARM)处理器或一亚哥缩减指令集计算机核心(Argonaut RISC Core,ARC)处理器。这只是为了说明的目的而已,并非对本发明的限制。依据本实施例的不同的变化例,处理单元110可为其它种处理器。
另外,挥发性存储器120可用来储存一全局页地址链结表(Global PageAddress Linking Table)、所述主装置所存取的数据、以及用来存取记忆装置100的其它所需信息。本实施例的挥发性存储器120可为一动态随机存取存储器(Dynamic Random Access Memory,DRAM)或一静态随机存取存储器(Static Random Access Memory,SRAM)。这只是为了说明的目的而已,并非对本发明的限制。依据本实施例的不同的变化例,挥发性存储器120可为其它种挥发性存储器。例如:挥发性存储器120可包括一静态随机存取存储器(Static Random Access Memory,SRAM)。
依据本实施例,图1所示的传输接口130是用来传输数据以及所述主装置与记忆装置100之间的指令,其中传输接口130符合一特定通信标准诸如串行高级技术附件(Serial Advanced Technology Attachment,SATA)标准、并列高级技术附件(Parallel Advanced Technology Attachment,PATA)标准、或通用串行总线(Universal Serial Bus,USB)标准。例如:记忆装置100是一设置于所述主装置中的固态硬盘(Solid State Drive,SSD),且所述特定通信标准可为用来实施所述主装置的内部通信的一些典型通信标准,诸如串行高级技术附件标准或并列高级技术附件标准。又例如:记忆装置100是一固态硬盘且位于所述主装置之外,并且所述特定通信标准可为用来实施所述主装置的外部通信的一些典型通信标准,诸如通用串行总线标准。这只是为了说明的目的而已,并非对本发明的限制。依据本实施例的不同的变化例,记忆装置100可为一可携式记忆装置诸如一记忆卡,且所述特定通信标准可为用来实施一记忆卡的输入/输出接口的一些典型通信标准,诸如安全数码(SecureDigital,SD)标准或小型快闪(Compact Flash,CF)标准。
另外,非挥发性存储器组件140_0、140_1、…、与140_N是用来储存数据,其中非挥发性存储器组件140_0、140_1、…、与140_N可为(但不限于)NAND型快闪芯片。总线150是用来耦接处理单元110、挥发性存储器120、传输接口130、和非挥发性存储器组件140_0、140_1、…、与140_N,以及用来进行其通信。在本实施例中,图1所示架构中除了非挥发性存储器组件140_0、140_1、…、与140_N之外的部分可整合成一控制器,尤其是一集成电路(Integrated Circuit,IC)诸如一控制器芯片,其中所述控制器是用来控制记忆装置100中的至少一非挥发性存储器组件诸如非挥发性存储器组件140_0、140_1、…、与140_N,故可视为记忆装置100的控制器。
图2绘示本发明一实施例中关于图1所示的非挥发性存储器组件140_0、140_1、…、与140_N中的任一非挥发性存储器组件140_n的内容安排,其中非挥发性存储器组件140_n在本实施例中可称为快闪芯片CHP(n),而索引n可代表落入区间[0,N]的范围内的任一整数。如图2所示,非挥发性存储器组件140_0、140_1、…、与140_N中的每一非挥发性存储器组件诸如快闪芯片CHP(n)可包括多个区块(Block)诸如图2所示的各个区块BLK(0)、BLK(1)、BLK(2)、…、与BLK(M)(符号「M」代表一正整数),其中每一区块可包括多页,而每一页可包括多个区段。在本实施例中,一区段可为最小读取单位。换言之,在一读取运作期间,处理单元110可读取一个区段或多个区段。这只是为了说明的目的而已,并非对本发明的限制。
如图2所示,在非挥发性存储器组件140_n诸如快闪芯片CHP(n)中的一区块(例如区块BLK(0))被组态成单阶细胞(Single Level Cell,SLC)记忆区块的状况下,所述区块诸如区块BLK(0)可包括一预定数量的页,所述预定数量大于1,诸如分别对应于多个字线(Word-Line)WL0、WL1、WL2、…、与WL63的各页Page(0)、Page(1)、Page(2)、…、与Page(63),其中每一页诸如页Page(0)可包括区段SEC(0)、SEC(1)、SEC(2)、与SEC(3)。这只是为了说明的目的而已,并非对本发明的限制。依据本实施例的某些变化例,诸如图3所示的实施例,在非挥发性存储器组件140_n诸如快闪芯片CHP(n)中的一区块(例如区块BLK(0))被组态成多阶细胞(Multiple Level Cell,MLC)记忆区块诸如三阶细胞(Triple Level Cell,TLC)记忆区块的状况下,所述区块诸如区块BLK(0)可包括一预定数量的页,所述预定数量大于1,诸如分别对应于上述多个字线WL0、WL1、WL2、…、与WL63的各组页{Page(0),Page(1),Page(2)}、{Page(3),Page(4),Page(5)}、{Page(6),Page(7),Page(8)}、…、与{Page(189),Page(190),Page(191)},其中每一页诸如页Page(0)可包括区段SEC(0)、SEC(1)、SEC(2)、与SEC(3)。
图4为依据本发明一实施例的一种用来管理一记忆装置的方法200。所述方法可应用于图1所示的记忆装置100,尤其是上述的控制器(例如:通过处理单元110执行上述程序代码的存储器控制器),其中执行上述程序代码的所述控制器是用来控制上述的至少一非挥发性存储器组件诸如图1所示的非挥发性存储器组件140_0、140_1、…、与140_N。所述方法说明如下:
在步骤210中,所述控制器将接收自所述主装置的数据暂时地储存于所述控制器中的挥发性存储器120作为接收数据,并动态地监控所述接收数据的数据量以决定是否立即将所述接收数据写入上述的至少一非挥发性存储器组件,其中接收自所述主装置的至少一写入指令指出所述主装置要求写入所述数据。尤其是,当所述接收数据的数据量达到一预定数据量临界值PDDA_TH时,所述控制器决定立即将所述接收数据写入上述的至少一非挥发性存储器组件。
在步骤220中,当决定立即将所述接收数据写入上述的至少一非挥发性存储器组件时,所述控制器将所述接收数据直接写入上述的至少一非挥发性存储器组件中的一特定非挥发性存储器组件当中被组态成多阶细胞记忆区块(例如图3所示实施例中具有192页Page(0),Page(1),…,Page(191)的所述区块)的一特定区块,而非通过先将所述接收数据暂时地写入被组态成单阶细胞记忆区块(例如图2所示实施例中具有64页Page(0),Page(1),…,Page(63)的所述区块)的任何其它区块来间接地将所述接收数据写入所述特定区块。例如:所述特定非挥发性存储器组件可为图3所示实施例中的快闪芯片CHP(n),其中所述特定区块可为区块{BLK(0),BLK(1),BLK(2),…,BLK(M)}中的一区块诸如区块BLK(m),而索引m可代表落入区间[0,M]的范围内的任一整数。
依据本实施例,在所述特定区块中的一记忆细胞(Memory Cell)被用来储存多个位的状况下,所述多个位需被重复地写入所述记忆细胞达一预定次数PDNT_WR以使所述记忆细胞在所述特定非挥发性存储器组件当中被正确地程序化(Programmed),以致所述多个位中的每一位均正确地储存于所述记忆细胞以供进一步读取,其中预定次数PDNT_WR大于一。实作上,挥发性存储器120的储存容量大于或等于预定数据量临界值PDDA_TH和预定次数PDNT_WR的乘积(PDDA_TH*PDNT_WR),以容许所述接收数据的至少一部分被用于所述记忆细胞的重复写入运作。例如:针对某些类型的多阶细胞闪存而言,所述特定区块可被组态成三阶细胞记忆区块,而预定次数PDNT_WR可等于三,并且预定数据量临界值PDDA_TH可等于所述特定非挥发性存储器组件当中属于一个字线(Word-Line)的一组记忆细胞的储存容量。这只是为了说明的目的而已,并非对本发明的限制。
请注意,在本实施例中,所述控制器可多次将所述接收数据直接写入所述特定区块,以确保用户数据不会有任何错误。尤其是,在所述控制器的控制下,所述接收数据被写入所述特定区块的次数达到预定次数PDNT_WR以使所述特定区块中属于一特定字线的一特定组记忆细胞在所述特定非挥发性存储器组件当中被正确地程序化,以致所述接收数据中的每一位均正确地储存于所述特定组记忆细胞以供进一步读取。
另外,在所述主装置欲从上述的至少一非挥发性存储器组件读取所述数据的状况下(例如所述主装置传送一个或多个读取指令至记忆装置100),所述数据在步骤210中尚未被写入任何非挥发性存储器组件。因此,在决定立即将所述接收数据写入上述的至少一非挥发性存储器组件之前,当接收自所述主装置的至少一读取指令指出所述主装置要求读取所述数据的至少一部分时,所述控制器可自挥发性存储器120读取所述数据的所述至少一部分以供回传予所述主装置,而非自所述特定非挥发性存储器组件读取所述数据的所述至少一部分。
依据本实施例的某些变化例,所述控制器自所述主装置分别接收多组数据{Data(0),Data(1),Data(2)}、{Data(3),Data(4),Data(5)}、{Data(6),Data(7),Data(8)}、…,且将所述多组数据{Data(0),Data(1),Data(2)}、{Data(3),Data(4),Data(5)}、{Data(6),Data(7),Data(8)}、…暂时地储存于挥发性存储器120,其中所述多组数据中的每一组数据报括多页,且所述多组数据中的每一组数据的数据量等于预定数据量临界值PDDA_TH。尤其是,所述控制器自挥发性存储器120分别读取所述多组数据{Data(0),Data(1),Data(2)}、{Data(3),Data(4),Data(5)}、{Data(6),Data(7),Data(8)}、…,以分别将所述多组数据{Data(0),Data(1),Data(2)}、{Data(3),Data(4),Data(5)}、{Data(6),Data(7),Data(8)}、…直接写入所述特定区块,并且多次将所述多组数据{Data(0),Data(1),Data(2)}、{Data(3),Data(4),Data(5)}、{Data(6),Data(7),Data(8)}、…中的第一组数据{Data(0),Data(1),Data(2)}直接写入所述特定区块,其中第一组数据{Data(0),Data(1),Data(2)}被写入所述特定区块的次数达到预定次数PDNT_WR以使所述特定区块中属于一特定字线的一特定组记忆细胞在所述特定非挥发性存储器组件当中被正确地程序化,以致第一组数据{Data(0),Data(1),Data(2)}中的每一位均正确地储存于所述特定组记忆细胞以供进一步读取。
图5绘示图4所示的方法200在一实施例中所涉及的控制方案,而图6绘示图5所示的控制方案的工作流程300,其中图5所示的数据Data(0)、Data(1)、Data(2)、Data(3)、Data(4)、Data(5)、Data(6)、Data(7)、Data(8)、…中的每一者可为一页数据。例如:一页数据的大小可为16KB(Kilobyte,即千字节)。这只是为了说明的目的而已,并非对本发明的限制。
在步骤310中,所述控制器自所述主装置逐页地接收包括多页的第一组数据{Data(0),Data(1),Data(2)}直到第一组数据{Data(0),Data(1),Data(2)}的总数据量达到预定数据量临界值PDDA_TH,且将第一组数据{Data(0),Data(1),Data(2)}暂时地储存于挥发性存储器120,其中在第一组数据{Data(0),Data(1),Data(2)}的总数据量达到预定数据量临界值PDDA_TH之前,第一组数据{Data(0),Data(1),Data(2)}并未被写入所述特定区块。
在步骤312中,当第一组数据{Data(0),Data(1),Data(2)}的总数据量达到预定数据量临界值PDDA_TH时,所述控制器自挥发性存储器120读取第一组数据{Data(0),Data(1),Data(2)}的至少一部分,以将第一组数据{Data(0),Data(1),Data(2)}直接写入所述特定区块。
在步骤320中,所述控制器自所述主装置逐页地接收包括多页的第二组数据{Data(3),Data(4),Data(5)}直到第二组数据{Data(3),Data(4),Data(5)}的总数据量达到预定数据量临界值PDDA_TH,且将第二组数据{Data(3),Data(4),Data(5)}暂时地储存于挥发性存储器120,其中在第二组数据{Data(3),Data(4),Data(5)}的总数据量达到预定数据量临界值PDDA_TH之前,第二组数据{Data(3),Data(4),Data(5)}并未被写入所述特定区块。
在步骤322中,当第二组数据{Data(3),Data(4),Data(5)}的总数据量达到预定数据量临界值PDDA_TH时,所述控制器自挥发性存储器120读取第二组数据{Data(3),Data(4),Data(5)}的至少一部分,以将第二组数据{Data(3),Data(4),Data(5)}直接写入所述特定区块,并且第二次将第一组数据{Data(0),Data(1),Data(2)}直接写入所述特定区块。
在步骤330中,所述控制器自所述主装置逐页地接收包括多页的第三组数据{Data(6),Data(7),Data(8)}直到第三组数据{Data(6),Data(7),Data(8)}的总数据量达到预定数据量临界值PDDA_TH,且将第三组数据{Data(6),Data(7),Data(8)}暂时地储存于挥发性存储器120,其中在第三组数据{Data(6),Data(7),Data(8)}的总数据量达到预定数据量临界值PDDA_TH之前,第三组数据{Data(6),Data(7),Data(8)}并未被写入所述特定区块。
在步骤332中,当第三组数据{Data(6),Data(7),Data(8)}的总数据量达到预定数据量临界值PDDA_TH时,所述控制器自挥发性存储器120读取第三组数据{Data(6),Data(7),Data(8)}的至少一部分,以将第三组数据{Data(6),Data(7),Data(8)}直接写入所述特定区块,并且第二次将第二组数据{Data(3),Data(4),Data(5)}直接写入所述特定区块,以及第三次将第一组数据{Data(0),Data(1),Data(2)}直接写入所述特定区块,借此,第一组数据{Data(0),Data(1),Data(2)}中的任一页数据的每一位均正确地储存于所述特定区块以供进一步读取。例如:在预定次数PDNT_WR等于三的状况下,第一组数据{Data(0),Data(1),Data(2)}的写入运作已完成。
针对所述多组数据{Data(0),Data(1),Data(2)}、{Data(3),Data(4),Data(5)}、{Data(6),Data(7),Data(8)}、…中的后续各组数据,所述控制器可依据图6所示的工作流程300所掲露的运作(尤其是步骤330及步骤332中的运作)对应地进行处理;依此类推。例如:当所述多组数据{Data(0),Data(1),Data(2)}、{Data(3),Data(4),Data(5)}、{Data(6),Data(7),Data(8)}、…中的第四组数据{Data(9),Data(10),Data(11)}的总数据量达到预定数据量临界值PDDA_TH时,所述控制器自挥发性存储器120读取第四组数据{Data(9),Data(10),Data(11)}的至少一部分,以将第四组数据{Data(9),Data(10),Data(11)}直接写入所述特定区块,并且第二次将第三组数据{Data(6),Data(7),Data(8)}直接写入所述特定区块,以及第三次将第二组数据{Data(3),Data(4),Data(5)}直接写入所述特定区块,借此,第二组数据{Data(3),Data(4),Data(5)}中的任一页数据的每一位均正确地储存于所述特定区块以供进一步读取,其中,在预定次数PDNT_WR等于三的状况下,第二组数据{Data(3),Data(4),Data(5)}的写入运作已完成。于是,通过利用图6所示的工作流程300,所述多组数据{Data(0),Data(1),Data(2)}、{Data(3),Data(4),Data(5)}、{Data(6),Data(7),Data(8)}、…中的所有的数据最终均正确地储存于所述特定区块以供进一步读取。本实施例与前述实施例/变化例相仿之处不再重复赘述。
图7绘示图4所示的方法200在另一实施例中所涉及的控制方案,其中图7所示的数据Data(0)、Data(1)、Data(2)、Data(3)、Data(4)、Data(5)、Data(6)、Data(7)、Data(8)、…中的每一者可为16KB的大小的数据,且可区分为一组各自为4KB的大小的数据(在图7中是分别标示成「4K」,即4KB的大小的意)。本实施例可用于随机逻辑地址的数据的写入。这只是为了说明的目的而已,并非对本发明的限制。
依据本实施例,所述控制器可利用挥发性存储器120收集随机逻辑地址的数据,其中一个随机写入运作的数据的大小可为4KB。当收集到的数据的大小达到16KB时,所述控制器可将所收集到16KB的数据视为图5所示实施例中的一页数据(例如:数据Data(0);又例如:其它数据Data(1)、Data(2)、Data(3)、Data(4)、Data(5)、Data(6)、Data(7)、Data(8)、…中的任一者)来进行处理。本实施例与前述实施例/变化例相仿之处不再重复赘述。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (20)
1.一种用来管理一记忆装置的方法,所述记忆装置包括至少一非挥发性存储器组件,每一非挥发性存储器组件包括多个区块,所述方法是应用于所述记忆装置中的一控制器,所述控制器是用来控制所述至少一非挥发性存储器组件,其特征在于,包括有下列步骤:
将接收自一主装置的数据暂时地储存于所述控制器中的一挥发性存储器作为接收数据,并动态地监控所述接收数据的数据量以决定是否立即将所述接收数据写入所述至少一非挥发性存储器组件,其中接收自所述主装置的至少一写入指令指出所述主装置要求写入所述数据;以及
当决定立即将所述接收数据写入所述至少一非挥发性存储器组件时,将所述接收数据直接写入所述至少一非挥发性存储器组件中的一特定非挥发性存储器组件当中被组态成多阶细胞记忆区块的一特定区块,而非通过先将所述接收数据暂时地写入被组态成单阶细胞记忆区块的任何其它区块来间接地将所述接收数据写入所述特定区块。
2.如权利要求1所述的方法,其特征在于,在所述特定区块中的一记忆细胞被用来储存多个位的状况下,所述多个位需被重复地写入所述记忆细胞达一预定次数以使所述记忆细胞在所述特定非挥发性存储器组件当中被正确地程序化,以致所述多个位中的每一位均正确地储存于所述记忆细胞以供进一步读取;以及所述预定次数大于一。
3.如权利要求2所述的方法,其特征在于,动态地监控所述接收数据的数据量的步骤还包括有:
当所述接收数据的数据量达到一预定数据量临界值时,决定立即将所述接收数据写入所述至少一非挥发性存储器组件;
其中所述挥发性存储器的储存容量大于或等于所述预定数据量临界值和所述预定次数的乘积,以容许所述接收数据的至少一部分被用于所述记忆细胞的重复写入运作。
4.如权利要求3所述的方法,其特征在于,所述预定数据量临界值等于所述特定非挥发性存储器组件当中属于一个字线的一组记忆细胞的储存容量。
5.如权利要求4所述的方法,其特征在于,所述多个区块中的任一区块包括一预定数量的页,所述预定数量大于1;以及所述方法还包括:
自所述主装置分别接收多组数据,且将所述多组数据暂时地储存于所述挥发性存储器,其中所述多组数据中的每一组数据报括多页,且所述多组数据中的每一组数据的数据量等于所述预定数据量临界值;以及
自所述挥发性存储器分别读取所述多组数据,以分别将所述多组数据直接写入所述特定区块,并且多次将所述多组数据中的一第一组数据直接写入所述特定区块,其中所述第一组数据被写入所述特定区块的次数达到所述预定次数以使所述特定区块中属于一特定字线的一特定组记忆细胞在所述特定非挥发性存储器组件当中被正确地程序化,以致所述第一组数据中的每一位均正确地储存于所述特定组记忆细胞以供进一步读取。
6.如权利要求2所述的方法,其特征在于,所述多个区块中的任一区块包括一预定数量的页,所述预定数量大于1;以及所述方法还包括:
自所述主装置逐页地接收包括多页的一第一组数据直到所述第一组数据的总接收数据量达到一预定数据量临界值,且将所述第一组数据暂时地储存于所述挥发性存储器,其中在所述第一组数据的所述总接收数据量达到所述预定数据量临界值之前,所述第一组数据并未被写入所述特定区块;以及
当所述第一组数据的所述总接收数据量达到所述预定数据量临界值时,自所述挥发性存储器读取所述第一组数据的至少一部分,以将所述第一组数据直接写入所述特定区块。
7.如权利要求6所述的方法,其特征在于还包括:
自所述主装置逐页地接收包括多页的一第二组数据直到所述第二组数据的总接收数据量达到所述预定数据量临界值,且将所述第二组数据暂时地储存于所述挥发性存储器,其中在所述第二组数据的所述总接收数据量达到所述预定数据量临界值之前,所述第二组数据并未被写入所述特定区块;以及
当所述第二组数据的所述总接收数据量达到所述预定数据量临界值时,自所述挥发性存储器读取所述第二组数据的至少一部分,以将所述第二组数据直接写入所述特定区块,并且第二次将所述第一组数据直接写入所述特定区块。
8.如权利要求7所述的方法,其特征在于还包括:
自所述主装置逐页地接收包括多页的一第三组数据直到所述第三组数据的总接收数据量达到所述预定数据量临界值,且将所述第三组数据暂时地储存于所述挥发性存储器,其中在所述第三组数据的所述总接收数据量达到所述预定数据量临界值之前,所述第三组数据并未被写入所述特定区块;以及
当所述第三组数据的所述总接收数据量达到所述预定数据量临界值时,自所述挥发性存储器读取所述第三组数据的至少一部分,以将所述第三组数据直接写入所述特定区块,并且第二次将所述第二组数据直接写入所述特定区块,以及第三次将所述第一组数据直接写入所述特定区块,借此,所述第一组数据中的任一页数据的每一位均正确地储存于所述特定区块以供进一步读取。
9.如权利要求1所述的方法,其特征在于还包括有:
在决定立即将所述接收数据写入所述至少一非挥发性存储器组件之前,当接收自所述主装置的至少一读取指令指出所述主装置要求读取所述数据的至少一部分时,自所述挥发性存储器读取所述数据的所述至少一部分以供回传予所述主装置,而非自所述特定非挥发性存储器组件读取所述数据的所述至少一部分。
10.如权利要求1所述的方法,其特征在于还包括有:
多次将所述接收数据直接写入所述特定区块,其中在所述控制器的控制下,所述接收数据被写入所述特定区块的次数达到一预定次数以使所述特定区块中属于一特定字线的一特定组记忆细胞在所述特定非挥发性存储器组件当中被正确地程序化,以致所述接收数据中的每一位均正确地储存于所述特定组记忆细胞以供进一步读取。
11.一种记忆装置,其特征在于包括有:
至少一非挥发性存储器组件,每一非挥发性存储器组件包括多个区块;以及
一控制器,用来控制所述至少一非挥发性存储器组件,所述控制器包括一处理单元,以依据内嵌于所述处理单元或接收自所述处理单元之外的一程序代码来管理所述记忆装置,其中所述控制器将接收自一主装置的数据暂时地储存于所述控制器中的一挥发性存储器作为接收数据,并动态地监控所述接收数据的数据量以决定是否立即将所述接收数据写入所述至少一非挥发性存储器组件,其中接收自所述主装置的至少一写入指令指出所述主装置要求写入所述数据;
其中当决定立即将所述接收数据写入所述至少一非挥发性存储器组件时,所述控制器将所述接收数据直接写入所述至少一非挥发性存储器组件中的一特定非挥发性存储器组件当中被组态成多阶细胞记忆区块的一特定区块,而非通过先将所述接收数据暂时地写入被组态成单阶细胞记忆区块的任何其它区块来间接地将所述接收数据写入所述特定区块。
12.如权利要求11所述的记忆装置,其特征在于,在所述特定区块中的一记忆细胞被用来储存多个位的状况下,所述多个位需被重复地写入所述记忆细胞达一预定次数以使所述记忆细胞于所述特定非挥发性存储器组件当中被正确地程序化,以致所述多个位中的每一位均正确地储存于所述记忆细胞以供进一步读取;以及所述预定次数大于一。
13.如权利要求12所述的记忆装置,其特征在于,当所述接收数据的数据量达到一预定数据量临界值时,所述控制器决定立即将所述接收数据写入所述至少一非挥发性存储器组件;以及所述挥发性存储器的储存容量大于或等于所述预定数据量临界值和所述预定次数的乘积,以容许所述接收数据的至少一部分被用于所述记忆细胞的重复写入运作。
14.如权利要求13所述的记忆装置,其特征在于,所述预定数据量临界值等于所述特定非挥发性存储器组件当中属于一个字线的一组记忆细胞的储存容量。
15.如权利要求14所述的记忆装置,其特征在于,所述多个区块中的任一区块包括一预定数量的页,所述预定数量大于1;所述控制器自所述主装置分别接收多组数据,且将所述多组数据暂时地储存于所述挥发性存储器,其中所述多组数据中的每一组数据报括多页,且所述多组数据中的每一组数据的数据量等于所述预定数据量临界值;以及所述控制器自所述挥发性存储器分别读取所述多组数据,以分别将所述多组数据直接写入所述特定区块,并且多次将所述多组数据中的一第一组数据直接写入所述特定区块,其中所述第一组数据被写入所述特定区块的次数达到所述预定次数以使所述特定区块中属于一特定字线的一特定组记忆细胞在所述特定非挥发性存储器组件当中被正确地程序化,以致所述第一组数据中的每一位均正确地储存于所述特定组记忆细胞以供进一步读取。
16.一种记忆装置的控制器,所述记忆装置包括至少一非挥发性存储器组件,每一非挥发性存储器组件包括多个区块,其特征在于,包括有:
一处理单元,用来依据内嵌于所述处理单元或接收自所述处理单元之外的一程序代码来管理所述记忆装置,其中所述控制器将接收自一主装置的数据暂时地储存于所述控制器中的一挥发性存储器作为接收数据,并动态地监控所述接收数据的数据量以决定是否立即将所述接收数据写入所述至少一非挥发性存储器组件,其中接收自所述主装置的至少一写入指令指出所述主装置要求写入所述数据;
其中当决定立即将所述接收数据写入所述至少一非挥发性存储器组件时,所述控制器将所述接收数据直接写入所述至少一非挥发性存储器组件中的一特定非挥发性存储器组件当中被组态成多阶细胞记忆区块的一特定区块,而非通过先将所述接收数据暂时地写入被组态成单阶细胞记忆区块的任何其它区块来间接地将所述接收数据写入所述特定区块。
17.如权利要求16所述的控制器,其特征在于,在所述特定区块中的一记忆细胞被用来储存多个位的状况下,所述多个位需被重复地写入所述记忆细胞达一预定次数以使所述记忆细胞在所述特定非挥发性存储器组件当中被正确地程序化,以致所述多个位中的每一位均正确地储存于所述记忆细胞以供进一步读取;以及所述预定次数大于一。
18.如权利要求17所述的控制器,其特征在于,当所述接收数据的数据量达到一预定数据量临界值时,所述控制器决定立即将所述接收数据写入所述至少一非挥发性存储器组件;以及所述挥发性存储器的储存容量大于或等于所述预定数据量临界值和所述预定次数的乘积,以容许所述接收数据的至少一部分被用于所述记忆细胞的重复写入运作。
19.如权利要求18所述的控制器,其特征在于,所述预定数据量临界值等于所述特定非挥发性存储器组件当中属于一个字线的一组记忆细胞的储存容量。
20.如权利要求19所述的控制器,其特征在于,所述多个区块中的任一区块包括一预定数量的页,所述预定数量大于1;所述控制器自所述主装置分别接收多组数据,且将所述多组数据暂时地储存于所述挥发性存储器,其中所述多组数据中的每一组数据报括多页,且所述多组数据中的每一组数据的数据量等于所述预定数据量临界值;以及所述控制器自所述挥发性存储器分别读取所述多组数据,以分别将所述多组数据直接写入所述特定区块,并且多次将所述多组数据中的一第一组数据直接写入所述特定区块,其中所述第一组数据被写入所述特定区块的次数达到所述预定次数以使所述特定区块中属于一特定字线的一特定组记忆细胞于所述特定非挥发性存储器组件当中被正确地程序化,以致所述第一组数据中的每一位均正确地储存于所述特定组记忆细胞以供进一步读取。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710518261.6A CN107423231B (zh) | 2013-08-05 | 2014-06-18 | 用来管理一记忆装置的方法以及记忆装置与控制器 |
CN201710380118.5A CN107391389B (zh) | 2013-08-05 | 2014-06-18 | 用来管理一记忆装置的方法以及记忆装置与控制器 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361862094P | 2013-08-05 | 2013-08-05 | |
US61/862,094 | 2013-08-05 | ||
TW102144913A TWI523016B (zh) | 2013-08-05 | 2013-12-06 | 用來管理一記憶裝置之方法以及記憶裝置與控制器 |
TW102144913 | 2013-12-06 |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710380118.5A Division CN107391389B (zh) | 2013-08-05 | 2014-06-18 | 用来管理一记忆装置的方法以及记忆装置与控制器 |
CN201710518261.6A Division CN107423231B (zh) | 2013-08-05 | 2014-06-18 | 用来管理一记忆装置的方法以及记忆装置与控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104346288A true CN104346288A (zh) | 2015-02-11 |
CN104346288B CN104346288B (zh) | 2017-07-28 |
Family
ID=52428745
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710518261.6A Active CN107423231B (zh) | 2013-08-05 | 2014-06-18 | 用来管理一记忆装置的方法以及记忆装置与控制器 |
CN201710380118.5A Active CN107391389B (zh) | 2013-08-05 | 2014-06-18 | 用来管理一记忆装置的方法以及记忆装置与控制器 |
CN201410272738.3A Active CN104346288B (zh) | 2013-08-05 | 2014-06-18 | 用来管理一记忆装置的方法以及记忆装置与控制器 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710518261.6A Active CN107423231B (zh) | 2013-08-05 | 2014-06-18 | 用来管理一记忆装置的方法以及记忆装置与控制器 |
CN201710380118.5A Active CN107391389B (zh) | 2013-08-05 | 2014-06-18 | 用来管理一记忆装置的方法以及记忆装置与控制器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9514042B2 (zh) |
KR (1) | KR101561546B1 (zh) |
CN (3) | CN107423231B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107544922A (zh) * | 2016-06-24 | 2018-01-05 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元及存储器存储装置 |
CN108804024A (zh) * | 2017-05-02 | 2018-11-13 | 慧荣科技股份有限公司 | 数据储存装置及其操作方法 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107423231B (zh) * | 2013-08-05 | 2020-11-20 | 慧荣科技股份有限公司 | 用来管理一记忆装置的方法以及记忆装置与控制器 |
US9928169B2 (en) * | 2014-05-07 | 2018-03-27 | Sandisk Technologies Llc | Method and system for improving swap performance |
KR102593362B1 (ko) | 2016-04-27 | 2023-10-25 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR20190074677A (ko) | 2017-12-20 | 2019-06-28 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR20200015247A (ko) | 2018-08-03 | 2020-02-12 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작방법 |
US11526619B2 (en) * | 2019-06-28 | 2022-12-13 | Bank Of America Corporation | System for securing and allowing access to electronic data in a data storage container |
US20210255783A1 (en) * | 2020-02-19 | 2021-08-19 | Silicon Motion, Inc. | Method and apparatus for performing data storage management to enhance data reliability with aid of repeated write command detection |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101526883A (zh) * | 2008-03-03 | 2009-09-09 | 群联电子股份有限公司 | 数据流传送分派方法、执行此方法的系统及其控制器 |
CN101576853A (zh) * | 2008-05-06 | 2009-11-11 | 群联电子股份有限公司 | 数据存取方法、使用此方法的控制器与存储系统 |
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 |
TW201035757A (en) * | 2009-03-20 | 2010-10-01 | Phison Electronics Corp | Data storing method for a flash memory and storage system |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8452912B2 (en) | 2007-10-11 | 2013-05-28 | Super Talent Electronics, Inc. | Flash-memory system with enhanced smart-storage switch and packed meta-data cache for mitigating write amplification by delaying and merging writes until a host read |
SG130988A1 (en) | 2005-09-29 | 2007-04-26 | Trek 2000 Int Ltd | Portable data storage device incorporating multiple flash memory units |
KR101077339B1 (ko) | 2007-12-28 | 2011-10-26 | 가부시끼가이샤 도시바 | 반도체 기억 장치 |
US8060719B2 (en) * | 2008-05-28 | 2011-11-15 | Micron Technology, Inc. | Hybrid memory management |
TWI385516B (zh) * | 2008-08-12 | 2013-02-11 | Phison Electronics Corp | 快閃記憶體儲存系統及其資料寫入方法 |
KR101548175B1 (ko) | 2008-11-05 | 2015-08-28 | 삼성전자주식회사 | 싱글 레벨 메모리 셀 블락과 멀티 레벨 메모리 셀 블락을 포함하는 불휘발성 메모리 장치의 마모 레벨링 방법 |
US8040744B2 (en) | 2009-01-05 | 2011-10-18 | Sandisk Technologies Inc. | Spare block management of non-volatile memories |
US8244960B2 (en) | 2009-01-05 | 2012-08-14 | Sandisk Technologies Inc. | Non-volatile memory and method with write cache partition management methods |
US20110041005A1 (en) | 2009-08-11 | 2011-02-17 | Selinger Robert D | Controller and Method for Providing Read Status and Spare Block Management Information in a Flash Memory System |
CN102541675B (zh) * | 2010-12-23 | 2015-03-11 | 慧荣科技股份有限公司 | 提升错误更正能力的方法、记忆装置及其控制器 |
US8886990B2 (en) | 2011-01-27 | 2014-11-11 | Apple Inc. | Block management schemes in hybrid SLC/MLC memory |
US8537613B2 (en) | 2011-03-31 | 2013-09-17 | Sandisk Technologies Inc. | Multi-layer memory system |
US8949508B2 (en) | 2011-07-18 | 2015-02-03 | Apple Inc. | Non-volatile temporary data handling |
US9176862B2 (en) | 2011-12-29 | 2015-11-03 | Sandisk Technologies Inc. | SLC-MLC wear balancing |
CN107423231B (zh) * | 2013-08-05 | 2020-11-20 | 慧荣科技股份有限公司 | 用来管理一记忆装置的方法以及记忆装置与控制器 |
-
2014
- 2014-06-18 CN CN201710518261.6A patent/CN107423231B/zh active Active
- 2014-06-18 CN CN201710380118.5A patent/CN107391389B/zh active Active
- 2014-06-18 CN CN201410272738.3A patent/CN104346288B/zh active Active
- 2014-07-18 US US14/334,684 patent/US9514042B2/en active Active
- 2014-08-05 KR KR1020140100426A patent/KR101561546B1/ko active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101526883A (zh) * | 2008-03-03 | 2009-09-09 | 群联电子股份有限公司 | 数据流传送分派方法、执行此方法的系统及其控制器 |
CN101576853A (zh) * | 2008-05-06 | 2009-11-11 | 群联电子股份有限公司 | 数据存取方法、使用此方法的控制器与存储系统 |
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 |
TW201035757A (en) * | 2009-03-20 | 2010-10-01 | Phison Electronics Corp | Data storing method for a flash memory and storage system |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107544922A (zh) * | 2016-06-24 | 2018-01-05 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元及存储器存储装置 |
CN107544922B (zh) * | 2016-06-24 | 2020-01-21 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元及存储器存储装置 |
CN108804024A (zh) * | 2017-05-02 | 2018-11-13 | 慧荣科技股份有限公司 | 数据储存装置及其操作方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107391389B (zh) | 2020-11-24 |
US20150039810A1 (en) | 2015-02-05 |
US9514042B2 (en) | 2016-12-06 |
CN107423231B (zh) | 2020-11-20 |
KR20150016914A (ko) | 2015-02-13 |
CN107423231A (zh) | 2017-12-01 |
CN107391389A (zh) | 2017-11-24 |
KR101561546B1 (ko) | 2015-10-19 |
CN104346288B (zh) | 2017-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104346288B (zh) | 用来管理一记忆装置的方法以及记忆装置与控制器 | |
CN104346292B (zh) | 用来管理一记忆装置的方法、记忆装置与控制器 | |
US8055873B2 (en) | Data writing method for flash memory, and controller and system using the same | |
US8489805B2 (en) | Memory devices operated within a communication protocol standard timeout requirement | |
KR20170053278A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
CN104750571A (zh) | 用以进行错误纠正的方法、存储装置与存储装置的控制器 | |
CN111158579B (zh) | 固态硬盘及其数据存取的方法 | |
US20140019670A1 (en) | Data writing method, memory controller, and memory storage device | |
CN106484316A (zh) | 用来管理一记忆装置的方法以及记忆装置与控制器 | |
US20140013030A1 (en) | Memory storage device, memory controller thereof, and method for writing data thereof | |
US9037781B2 (en) | Method for managing buffer memory, memory controllor, and memory storage device | |
CN109426451A (zh) | 将数据写入闪存模块的方法及相关闪存控制器与电子装置 | |
CN103218308B (zh) | 缓冲存储器管理方法、存储器控制器与存储器储存装置 | |
CN102543184B (zh) | 存储器储存装置、其存储器控制器与数据写入方法 | |
TW201633134A (zh) | 實體儲存對照表維護方法以及使用該方法的裝置 | |
CN112230849A (zh) | 存储器控制方法、存储器存储装置及存储器控制器 | |
CN102279815A (zh) | 以快闪存储器为基础的存储装置及其数据写入方法 | |
CN104657083A (zh) | 数据写入方法、存储器储存装置、存储器控制电路单元 | |
KR20170109344A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
CN105868046A (zh) | 存储装置中管理、写入及加载固件代码的方法 | |
TWI523016B (zh) | 用來管理一記憶裝置之方法以及記憶裝置與控制器 |
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 |