CN111095226B - 具有动态高速缓冲存储器管理的存储器装置 - Google Patents
具有动态高速缓冲存储器管理的存储器装置 Download PDFInfo
- Publication number
- CN111095226B CN111095226B CN201880056006.7A CN201880056006A CN111095226B CN 111095226 B CN111095226 B CN 111095226B CN 201880056006 A CN201880056006 A CN 201880056006A CN 111095226 B CN111095226 B CN 111095226B
- Authority
- CN
- China
- Prior art keywords
- memory
- data
- mode
- slc
- valid data
- 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.)
- Active
Links
- 230000015654 memory Effects 0.000 claims abstract description 261
- 230000006870 function Effects 0.000 claims description 32
- 238000000034 method Methods 0.000 claims description 28
- 239000010410 layer Substances 0.000 claims description 6
- 230000003068 static effect Effects 0.000 claims description 5
- 239000002356 single layer Substances 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 230000005669 field effect Effects 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000008685 targeting Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- -1 appliances Substances 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008713 feedback mechanism Effects 0.000 description 1
- 238000013101 initial test Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000011144 upstream manufacturing Methods 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/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/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/0893—Caches characterised by their organisation or structure
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0646—Configuration or reconfiguration
-
- 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/0891—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means
-
- 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
-
- 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/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- 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/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
- 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/0689—Disk arrays, e.g. RAID, JBOD
-
- 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/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- 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/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
- G06F2212/2022—Flash 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/70—Details relating to dynamic memory management
- G06F2212/702—Conservative garbage collection
-
- 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/7205—Cleaning, compaction, garbage collection, erase control
-
- 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
-
- 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)
- Read Only Memory (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Computer Hardware Design (AREA)
Abstract
一种存储器***包含:存储器阵列,其具有多个存储器胞元;及控制器,其耦合至所述存储器阵列,所述控制器经配置以:选择存储有效数据的垃圾收集GC源块,计算用于表示所述GC源块内的所述有效数据的量的用于所述GC源块的有效数据度量,及基于所述有效数据度量指定用于可用存储器块的存储模式,其中所述存储模式是用于控制经所述存储器胞元中的每一者存储的位的数目以用于后续或即将到来的数据写入。
Description
技术领域
所揭示的实施例涉及存储器装置,且具体地说,涉及具有用于高速缓冲存储器功能的动态管理的机制的存储器装置。
背景技术
存储器***可使用存储器装置存储及存取信息。所述存储器装置可包含易失性存储器装置、非易失性存储器装置或组合装置。所述非易失性存储器装置可包含使用“NAND”技术或逻辑门、“NOR”技术或逻辑门或其组合的快闪存储器。
例如快闪存储器的存储器装置利用电荷连同对应阈值电平或处理电压电平来存储及存取数据。在存储数据时,存储器装置可具有提供较快操作速度的一些存储部分,及提供较高存储容量及/或密度的其它存储部分。虽然已进行尝试将存储器装置优化以最佳地采用这些不同能力,但各种挑战(例如众多不同使用条件、由用途引起的快闪存储器装置的性能特性的改变等等)已使充分利用不同特性困难重重。
因此,需要一种具有动态高速缓冲存储器管理的存储器装置。鉴于不断增长的商业竞争压力,连同区分市场中的产品的增长的消费者期望及需求,日益需要找到对这些问题的答案。另外,降低成本、改进效率及性能并符合竞争压力的需要增添了找到这些答案的甚至更大的压力。
附图说明
图1为根据本发明技术的实施例的具有动态高速缓冲存储器管理的存储器***的框图。
图2A、2B及2C绘示根据本发明技术的实施例的垃圾收集功能。
图3绘示根据本发明技术的实施例的操作图1中的存储器***的实例方法。
图4为根据本发明技术的实施例的包含存储器装置的***的示意图。
具体实施方式
本文中所揭示的技术涉及存储器装置、具有存储器装置的***,及用于动态地管理用于所述存储器装置的高速缓冲存储器的相关方法。所述存储器***可使用在垃圾收集的源块中找到的有效数据来确定或辨识正由存储器***处理的工作的类型或样式并相应地管理高速缓冲存储功能。
根据正由存储器装置处理的工作的类型或特性,存储器装置可包含用于持有或表示每胞元一个位(例如在两个电荷层中的一者中)的单层胞元(SLC),及/或用于持有或表示每胞元多个位(例如在多于两个电荷层中的一者中)的附加层胞元(XLC)。SLC可经编程至两个不同数据状态中可由二进制单位1或0表示的目标化数据状态。XLC可经编程至多于两个数据状态中的目标化数据状态。
举例来说,XLC可包含快闪存储器胞元,其可经编程至四个状态(例如由二进制00、01、10、11表示)中的任一者以存储数据的两个位。此XLC被称为多层胞元(MLC)。另外其它XLC可包含可经编程至八个数据状态(例如000、001、010、011、100、101、110、111)中的任一者以在单一胞元中存储数据的三个位的快闪存储器胞元。这些胞元可被称作三层胞元(TLC)。对于XLC,甚至更高数目个数据状态是可能的。举例来说,四层胞元(QLC)可经编程至16个数据状态(例如0000、0001、0010、0011、0100、0101、0110、0111、1000、1001、1010、1011、1100、1101、1110、1111)中的任一者以用于存储数据的四个位。
能够存储较高数目个数据状态的存储器胞元可提供较高密度存储器或大容量存储器,而不增加存储器胞元的数目,这是由于每一胞元可表示多于一个位。虽然当作为XLC操作时,更多信息可存储于给定数目个胞元中,但归因于XLC需要的较慢编程时间,写入性能可降低。举例来说,在使用额外或详细过程根据容差窗写入数据时,写入性能可降级,通过增加在给定范围内的可能数据状态的数目,容差窗减小。因而,SLC可用作用于NAND快闪存储器装置的高速缓冲存储器。SLC高速缓冲存储器可包含由SLC保留块定义的静态SLC高速缓冲存储器,或通过在SLC模式中使用XLC块定义的动态SLC高速缓冲存储器。
在空闲时间期间,例如在处理主机数据时发生的中断或暂停期间,可生成或回收SLC高速缓冲存储器,使得可在SLC模式中写入主机数据。然而,对于某些工作条件,空闲时间可不太频繁地出现,这可导致存储器装置未能释放足够量的块用于写入,且因此未能赶上主机写入大小。
常规地,存储器装置从XLC块池捡取新主机块(即,指定用于即将到来的或后续写入的存储器块),且因此在XLC模式中写入后续主机数据,以增大块大小并减缓块消耗速率。因此,与SLC模式相比,在使用XLC模式时,写入性能将降低。在稳态下(即,具有不太频繁的空闲时间的工作条件,例如当在检测到表示在存储数据时的暂停的空闲时间事件前填充预定数目个存储器块或页时),在SLC模式中操作XLC存储器块可减小存储器块的有效大小,从而减小存储容量。举例来说,对于能够表示两个位的块,在SLC模式中操作将使容量减小一半。还举例来说,在SLC模式中操作TLC存储器块将使容量减小至原始三分之一,且QLC块将减小至四分之一,等等。对于某些类型的工作负载,归因于容量的减小(例如对应于以上实例中剩余未使用的一半、三分之二或四分之三)失去的潜在地址可迫使进行垃圾收集(即,擦除陈旧或无用数据且回收占据的存储器块用于在存储新数据时再使用的过程)。
代替地,在本发明技术的若干实施例中,存储器装置可跟踪存储器块中经受垃圾收集的有效数据以管理存储器块的操作模式。所述存储器装置可使用有效数据的量作为与正由所述存储器装置执行的工作相关联的写入放大(WA)的指示,其中WA为与物理上在存储器装置中写入的信息的实际对应量相比,意欲在存储器装置102中写入的数据的大小的表示(例如归因于与用于使跨胞元的写入的数目相等、用于回收存储器块等等的操作相关联的再写入)。如果所述有效数据小于阈值,那么存储器装置可将工作特性化为低WA,且在稳态下在SLC模式中打开主机块,由此改进存储器装置的性能。
另外,如本文中所使用的术语“动态”描述在存储器装置的操作、使用或部署期间发生的操作、功能、动作或实施。动态发生的操作、功能、动作或实施可在设计、制造及初始测试、设置或配置(例如在用户环境中)后发生。
图1为根据本发明技术的实施例的具有动态高速缓冲存储器管理的存储器***100的框图。存储器***100包含具有存储器阵列104(例如NAND快闪存储器)的存储器装置102,及控制器106。所述存储器装置102可将存储器阵列104可操作地耦合至主机装置108(例如上游中央处理器(CPU))。
存储器阵列104可包含经配置以存储数据并提供对数据的存取的电路***。存储器阵列104可被提供为计算机或其它电子装置中的半导体、集成电路及/或外部抽取式装置。所述存储器阵列104包含多个存储器区域或存储器单元120。存储器单元120可为个别存储器裸片、单一存储器裸片中的存储器平面、与硅穿孔(TSV)竖直连接的堆叠存储器裸片或类似者。在一个实施例中,存储器单元120中的每一者可由半导体裸片形成,且与其它存储器单元裸片一起布置于单一装置包装(未展示)中。在其它实施例中,存储器单元120中的一或多者可共位于单一裸片上及/或跨多个装置包装而分布。存储器装置102及/或个别存储器单元120还可包含其它电路组件(未展示),例如多路复用器、解码器、缓冲器、读取/写入驱动器、地址寄存器、数据输出/数据输入寄存器等等,用于存取及/或编程(例如写入)数据及其它功能性,例如用于处理信息及/或与控制器106通信。
存储器单元120中的每一者包含存储器胞元122的阵列,其各自在电荷存储结构中存储数据。举例来说,所述存储器胞元122可包含经配置以永久或半永久地存储数据的浮动栅极、电荷捕获、相变、铁电、磁阻及/或其它合适存储元件。存储器胞元122可为单晶体管存储器胞元,其可经编程至目标状态以表示信息。举例来说,电荷可放置于存储器胞元122的电荷存储结构(例如电荷捕获或浮动栅极)上或从所述电荷存储结构移除,以将所述胞元编程至特定数据状态。
存储器胞元122的电荷存储结构上的经存储电荷可指示所述胞元的阈值电压(Vt)。所述阈值电压可对应于可允许对应存储器胞元122的不同数据状态。举例来说,SLC可经编程至两个不同数据状态中的目标化数据状态,其可由二进制单位1或0表示。类似地,所述阈值电压可对应于用于MLC的四个数据状态、用于TLC的八个数据状态、用于QLC的16个数据状态等等。
存储器胞元122可按行(例如每一者对应于字线)及列(例如每一者对应于位线)而布置。每一字线可包含一或多个存储器页124,其取决于所述字线的存储器胞元122经配置以存储的数据状态的数目。
举例来说,单一字线(即,包含单一存储器页124)的存储器胞元122可各自存储两个数据状态中的一者(例如经配置以各自存储一个位的SLC存储器胞元)。替代地,单一字线(即,包含两个存储器页124)的存储器胞元122可各自存储四个数据状态中的一者(例如经配置以各自存储两个位的MLC存储器胞元)且包含两个存储器页124。此外,在“奇-偶位线架构”中(例如在将单一字线的奇数号列中的所有存储器胞元122分组为第一页,且将同一字线的偶数号列中的所有存储器胞元122分组为第二页的情况下),在字线内,可将页124交错,使得经配置以存储两个数据状态中的一者的字线的存储器胞元122(例如SLC存储器胞元)可包含两个页。当在组织具有各自经配置以存储较大数目个数据状态的存储器胞元122(例如经配置为MLC、TLC、QLC等等的存储器胞元)的字线时利用奇-偶位线架构时,每字线的页的数目可甚至更高(例如4、6、8等等)。
各列可包含耦合至共同源极的一串串联耦合的存储器胞元122。每一串中的存储器胞元122可串联连接于源极选择晶体管(例如场效应晶体管)与漏极选择晶体管(例如场效应晶体管)之间。源极选择晶体管通常可耦合至源极选择线,且漏极选择晶体管通常可耦合至漏极选择线。
存储器装置102可使用存储器胞元122的不同分组来执行数据操作。举例来说,存储器胞元122的存储器页124可经分组至存储器块126内。在操作中,可关于存储器装置102的各种存储器区域写入或以其它方式编程(例如擦除)数据,例如通过写入至页124的群组及/或存储器块126。在基于NAND的存储器中,写入操作常常包含用特定数据值(例如具有逻辑0或逻辑1的值的一串数据位)编程选定存储器页124中的存储器胞元122。擦除操作类似于写入操作,但擦除操作将全部存储器块126或多个存储器块126重新编程至相同数据状态(例如逻辑0)除外。
在其它实施例中,存储器胞元122可布置于与在所绘示的实施例中所展示的群组及/或层次不同类型的群组及/或层次中。另外,虽然用于说明目的而在所绘示的实施例中展示具有某一数目个存储器胞元、行、列、块及存储器单元,但在其它实施例中,存储器胞元、行、列、块及存储器单元的数目可变化,且可在规模上比在所绘示的实例中所展示大或小。
举例来说,在一些实施例中,存储器装置102可包含仅一个存储器单元120。替代地,存储器装置102可包含两个、三个、四个、八个、十个或更多个(例如16、32、64或更多个)存储器单元120。虽然存储器单元120在图1中被展示为各自包含两个存储器块126,但在其它实施例中,每一存储器单元120可包含一个、三个、四个、八个或更多个(例如16、32、64、100、128、256或更多个存储器块)。在一些实施例中,每一存储器块126可包含例如215个存储器页,且块内的每一存储器页可包含例如212个存储器胞元122(例如“4k”页)。
控制器106可为微控制器、专用逻辑电路***(例如现场可编程门阵列(FPGA)、专用集成电路(ASIC)等等)或其它合适处理器。控制器106可包含经配置以执行存储于存储器中的指令的处理器131。在所绘示的实例中,控制器106的存储器包含嵌入式存储器133,其经配置以执行用于控制存储器***100的操作的各种过程、操作、逻辑流程及例程,操作包含管理存储器装置102及处置存储器装置102与主机装置108之间的通信。在一些实施例中,嵌入式存储器133可包含存储例如存储器指针、经提取数据等等的存储器寄存器。嵌入式存储器133还可包含用于存储微码的只读存储器(ROM)。虽然已将图1中所绘示的示范性存储器装置102绘示为包含控制器106,但在本发明技术的另一实施例中,存储器装置可不包括控制器,且可代替地依赖于外部控制(例如由外部主机提供,或由与存储器装置分开的处理器或控制器提供)。
存储器***100可实施动态SLC高速缓冲存储130,以用于用存储器阵列104对数据110进行操作(例如读取、写入、擦除等等)。对于动态SLC高速缓冲存储130,存储器***100可在SLC模式中配置以改进存取或读取时间、写入时间或其组合的XLC单元132上临时存储数据(例如最有效数据)。XLC单元132为能够存储数据的多于一个位的存储器胞元。举例来说,XLC单元132可包含MLC、TLC、QLC或能够每胞元持有多于一个位的任何其它存储器胞元。
在图1中,使用页映射来绘示XLC单元132。页映射可表示针对用于存储器块126中的每一者的存储器页124的存储器胞元122、地址、类型或其组合的分组。所述页映射可识别逻辑页类型(例如下部、上部或附加页),且还识别与所述页中的每一者相关联的字线或字线群组。页映射可进一步包含对应于每一胞元的位持有容量的每胞元位数(被绘示为‘bpc’)(例如SLC对应于为1的bpc值,且XLC对应于大于1的bpc值)。
存储器***100可确定用于控制XLC单元132的存储容量及处理时间的存储模式134。所述存储模式134可由指示对应XLC单元132的存储容量的信号或参数表示。存储模式134可指示XLC单元132将用以存储比其对应完全容量数目少的位或对应于其完全容量的数目个位。
举例来说,存储器***100可将存储模式134指定为SLC模式136或XLC模式138。SLC模式136可包含用以指示对应XLC单元132将用以每胞元存储一个位的信号或参数。换句话说,存储器***100可使用SLC模式136使XLC单元132如同其为SLC单元般操作。相比之下,存储器***100可使用XLC模式138使XLC单元132按其完全容量操作(例如,对于MLC单元,每胞元存储两个位,对于TLC单元,每胞元存储三个位,对于QLC单元,每胞元存储四个位,等等)。
出于说明的目的,XLC模式138在以下被描述为指示对应存储器胞元122将用以每胞元存储对应于其完全容量的数目个位。然而,应理解,存储器***100可利用不同控制信号或参数子集来指定每胞元使用多个位但按小于对应存储器胞元122的完全容量来使用的存储模式(例如在MLC模式中使用TLC胞元等等)。
使用SLC模式136,存储器***100可改进写入性能,同时减小XLC单元132的存储密度。替代地,使用XLC模式138可降低写入性能,同时增大XLC单元的存储密度。当在XLC模式138中操作存储器块126时,逻辑块地址(LBA)的完全范围可容纳于存储器阵列104上。相比之下,在SLC模式136中利用MLC、TLC或QLC块可分别将那些块的可存取LBA范围按2、3或4的因数减小。
虽然完全LBA范围可在XLC模式中可用,但出于各种原因,按完全存储容量(例如每胞元最大数目个支持位)写入可比每胞元写入一个位慢。举例来说,在SLC模式136中操作XLC单元132可允许用于读取阈值的较大裕度,及针对用以写入目标数据的递增步阶脉冲编程(ISPP)的较少反复。为了根据ISPP写入数据,存储器装置102可经由递增编程在存储器胞元的所述存储结构上存储电荷。为了将存储器胞元编程至所要目标状态,可多次施加一系列递增电荷以增大存储于胞元的电荷存储结构上的电荷。在每一编程步骤后,可验证存储于电荷存储结构上的电荷以确定其是否达到所要目标状态。通过在SLC模式中操作,存储器***100可针对每一增量使用较大量电荷,使得需要较少反复来达到所要电平。
对于某些工作负载类型146(即,对由存储器装置102处置的操作的分类),写入性能的改进可导致总体增益,而不经历来自存储密度的减小的许多负面影响。在动态SLC高速缓冲存储130期间,可在空闲时间期间生成或回收SLC高速缓冲存储器(例如在SLC模式136中操作的XLC单元132)。然而,一些种类的工作可无空闲时间,或包含相对不频繁的空闲时间,例如连续工作负载150(即,稳态),其导致所有可用SLC高速缓冲存储器的花费或使用。存储器***100可基于估计或辨识与正由存储器装置102执行的工作相关联的WA量而在SLC模式136中打开XLC单元132(即,代替在XLC模式138中将其打开的常规方法)。
图2A、2B及2C绘示根据本发明技术的实施例的用于垃圾收集(GC)功能202的进展。GC功能202找到旧有或陈旧的数据用于在回收图1的存储器块126时擦除,用于在存储新数据时再使用。经由GC功能202,来自一或多个页的有效数据204可经收集及写入至新空页,且旧页可失效、经擦除及回收,用于再使用及新传入数据的后续存储。有效数据204为存储于图1的存储器胞元122中意欲用于稍后存取的图1的数据110的正确或最新实例。在更新先前数据时,快闪存储器装置将新数据(即,有效数据204)写入至不同位置,其中旧数据变得陈旧或不必要,而非直接用新数据覆写旧数据。GC功能202可移除此陈旧或不必要的数据,同时保留有效数据204在新位置。由于快闪存储器装置按图1的存储器页124的增量写入且按存储器块126的增量擦除,故垃圾收集功能202可移动数据的页且释放存储器块供擦除操作。
图2A、2B及2C概念性地绘示在GC功能202期间的时间201、203及205的与存储于图1的存储器阵列104中(例如在被标注为‘块X’及‘块Y’的存储器块126内的存储器页124中)的数据110相关联的一连串状态。图2A绘示在时间201存储于‘块X’中的数据110的状态的初始状态或开始点。图2B绘示在稍后时间203的改变的状态或对存储于‘块X’中的数据110的状态的更新。图2C绘示在时间205将有效数据204从‘块X’移动至‘块Y’的GC功能202。
举例来说,在图2A中,‘块X’可存储或包含被标注为‘A’的有效数据204。存储器页124的其它可用实例可各自与表示对应页未占据且可用于写入的写入可用状态206相关联。
在图2B中,存储器***100可进一步存储被标注为‘B’及‘C’的数据。存储器***100可进一步存储表示数据‘A’的经更新版本的数据‘A2’,这导致‘A’变得旧且陈旧。在时间203的有效数据204可对应于被标注为‘B’、‘C’及‘A2’的数据。先前存储且仍然存在的数据‘A’可表示期满数据208。期满数据208可包含先前存储但归因于一或多个后续操作、改变或更新而不再有用、过期、陈旧或无效的数据110。
在图2C中,存储器***100可实施GC功能202以从GC源块210(即,目标用于垃圾功能202或垃圾功能202的主体的存储器块,如由图2A、2B及2C中的‘块X’所表示)释放存储器胞元122。存储器***100可识别GC源块210中用于GC功能202的有效数据204及期满数据208。如图2C中所绘示,存储器***100可将有效数据204(无期满数据208)复制至被标注为‘块Y’的新位置。存储器***100可随后擦除存储于GC源块210(即,‘块X’)中的数据110(即,复制的有效数据204及期满数据208)。结果,GC源块210的存储器页124可对应于表示用于存储新传入数据的可用性的写入可用状态206。
图3为绘示根据本发明技术的实施例的操作图1的存储器***100的实例方法300的流程图。方法300可包含图1的动态SLC高速缓冲存储130的实施,包含根据用于图2A-2C的GC功能202的图2A-2C的GC源块210中的图2A-2C的有效数据204的量对高速缓冲存储器的管理。
在方框302处,存储器***100可关于图1的存储器装置102对图1的数据110执行操作,例如通过写入数据110、读取数据110、擦除数据110等等。存储器***100可在各种不同条件(例如表示稳态的图1的连续工作负载150)下执行各种不同类型的工作。在执行工作时,存储器***100可指定图1的存储模式134以根据工作的类型、条件等等使图1的XLC单元132的利用变化。举例来说,存储器***100可指定能够持有多个位的XLC单元132在图1的SLC模式136中操作,且图1的每存储器胞元122存储一个位。
在方框304处,存储器***100可实施图2A-2C的GC功能202。存储器***100可连同在方框302中表示的数据操作一起实施GC功能202,例如通过并行操作。无论何时图1的一或多个存储器块126变满,例如当对应块126内的图1的所有存储器页124已经写入且其中无一页124具有图2A-2C的写入可用状态206时,存储器***100皆可触发GC功能202。
存储器***100可通过选择将目标用于GC功能202的GC源块210来实施GC功能202。存储器***100可选择GC源块210作为存储器块126中已变满的一者。
在选择了GC源块210后,存储器***100可识别存储于其中的有效数据204,将有效数据204复制至新页,且擦除GC源块210。存储器***100可有效地移动有效数据204,且擦除GC源块210以删除图2B的期满数据208,且因此释放GC源块210供后续写入。通过对具有最少量的数据的块执行GC功能202,存储器***100可恢复其中的存储器页124供后续写入。
在方框306处,存储器***100可测量存储于GC源块210中的有效数据204的量。存储器***100可将有效数据204用作管理SLC高速缓冲存储器时的反馈机制。
无论何时触发GC功能202,存储器***100皆可计算表示在擦除前存储于GC源块210内的有效数据204的量的有效数据度量332。存储器***100可通过对存储有效数据204的存储器页124的数目计数同时忽略具有写入可用状态206或期满数据208的任何页或通过对与具有期满数据208而无空的或写入可用页的页相比的有效页计数来计算。所述存储器***100可进一步将有效数据度量332作为有效数据204的量与GC源块210的大小、空的或写入可用页的量、具有期满数据208的页的量或其组合之间的比较(例如使用分数或百分比)来计算。
在方框308处,存储器***100可比较有效数据度量332与表示用以指定可用存储器块342(即,经设定或指定用于后续或即将到来的数据写入的存储器胞元122)的存储模式134的极限的决策阈值334。决策阈值334可表示对应于图1的SLC模式136及XLC模式138的有效数据204的阈值量。因此,存储器***100可基于有效数据度量332将存储模式134指定为SLC模式136或XLC模式138。
决策阈值334可进一步对应于WA且特性化如针对存储器***100确定的低WA状态。举例来说,决策阈值334可为在GC源块210的0%与小于25%之间的值。所述决策阈值334可针对存储器***100预确定或根据预定方法、函数、运算、电路、方程式等等实施地确定。
在方框310处,当有效数据度量332不小于决策阈值334时,存储器***100可将用于可用存储器块342的存储模式134指定为XLC模式138。对于执行具有高WA的工作负载,如由有效数据度量332超过决策阈值334所特性化,存储器***100可指定XLC模式138以增大存储容量且减缓块消耗速率。因此,存储器***100可使用有效数据度量332及决策阈值334以适宜于高WA状态,且因此利用XLC模式138。
在方框312处,当有效数据度量332小于决策阈值334时,存储器***100可将用于可用存储器块342的存储模式134指定为SLC模式136。对于执行具有低WA的工作负载,如由有效数据度量332小于决策阈值334所特性化,所述存储器***100可指定SLC模式136以增加写入性能且有效地提供突发速度。
通过有效数据度量332小于决策阈值334的确定,存储器***100可确定存储器装置102正在表示相对于存储器装置的公告大小的少量(即,如由决策阈值334所定义)的有效数据的低逻辑饱和状态336(例如对应于低垃圾收集成果状态)中操作。低逻辑饱和状态336可为低WA状态的特性。其还可指示,存储器装置正在立即经覆写的超热主机数据下操作,从而创建具有较小量的有效数据的块。因此,存储器***100可指定可用存储器块342在SLC模式136中针对即将到来的或后续数据写入操作。
举例来说,存储器***100可指定SLC模式136用于对应于GC光标338(即,用于经受GC功能202的存储器块的地址,例如用于GC源块210的地址)的块,如在方框322中所表示,或用于对应于主机光标340(即,用于目标用于存储传入数据或目标用于下一写入操作的存储器块的地址)的块,如在方框324中所表示。对于方框322,一旦GC源块210在GC功能202后变得针对数据写入释放,存储器***100就可指定其在SLC模式136中操作。GC源块210可一旦其变得释放就变为可用存储器块342。对于方框324,存储器***100可指定可用存储器块342(即,当前指定用于下一发生的存储器写入的存储器块)在SLC模式136中操作,而不管GC源块210。
在方框314处,存储器***100可开放存储器块供写入操作,包含允许写入至可用存储器块342。存储器***100可根据在方框310或312中指定的存储模式134开放存储器块。因此,存储器***100可继续对数据操作,如用从方框314进入至方框302的反馈环路所表示。
存储器***100可指定可用存储器块342在SLC模式136中操作,甚至在稳态或连续工作负载150下。无论何时GC功能202经触发且独立于空闲时间,指定皆可发生。存储器***100可使用有效数据度量332及决策阈值334智能地适应于稳态工作流程,且当WA低时提供SLC高速缓冲存储器,以提供写入性能的增加,而不遭受块消耗速率的增大。归因于低WA及少量有效数据204,GC功能202可高速恢复块,且充分抵消块消耗速率。因而,存储器***100可指定在稳态下的SLC模式136,而不管在SLC模式136中先前写入的数据的量。
另外,存储器***100可指定在稳态下的SLC模式136,而不管与性能模型354(即,特性化工作负载的样式或类型的基准微量)相关联的数据合意性度量352(即,与正执行的工作相关联的微量的流行度或所述微量有多“热”)。由于存储器***100可基于确定低逻辑饱和状态336来指定SLC模式136,故存储器***100可甚至针对在稳态下的超热基准微量来指定SLC模式136。
根据在稳态下的GC源块210的有效数据度量332指定存储模式134提供甚至在无空闲时间的情况下增大写入性能的益处。通过指定在稳态下的SLC模式136,存储器装置102可针对超热数据及针对在较低逻辑饱和度下操作的用户样式无空闲时间地以突发速度执行。
另外,当根据GC源块210的有效数据度量332,GC WA低(即,如由决策阈值334所定义)时,在SLC模式136中打开主机及GC光标块提供调节由XLC单元132经历的编程-擦除循环的数目的益处。因而,可根据GC源块210的有效数据度量332经由SLC模式136的使用紧紧地控制快闪存储器的P/E循环。
SLC高速缓冲存储130及/或方法300可例如由用于存储器装置102或主机装置108的处理电路***(例如控制器106、存储器阵列104、用于主机装置108的处理器、其中的一部分或其组合)执行或实施。SLC高速缓冲存储130及/或方法300可包含或对应于控制器106、存储器阵列104、主机装置108或其组合的配置。SLC高速缓冲存储130可进一步包含存储于控制器106、存储器阵列104、主机装置108或其组合内或使用控制器106、存储器阵列104、主机装置108或其组合存取的一或多个方法、操作、步骤或指令、信息或其组合。
出于说明的目的,已描述具有如上文论述为实例的序列及操作的流程图。然而,应理解,方法300可不同。举例来说,在方框304至314中表示的操作可与在方框302中表示的操作组合。还举例来说,可组合在方框304与306中表示的操作。还举例来说,可与在方框302及314中表示的操作并行地运行在方框304至312中表示的操作。
图4为根据本发明技术的实施例的包含存储器装置的***的示意图。上文参考图1至3描述的前述存储器装置中的任一者可并入至无数更大及/或更复杂***中的任一者内,所述***的代表性实例为在图4中示意性展示的***480。***480可包含存储器装置400、电源482、驱动器484、处理器486及/或其它子***或组件488。存储器装置400可包含特征,这些特征大体上类似于上文参考图1至3描述的存储器装置的特征,且可因此包含用于执行上文所论述的操作的各种特征。所得***480可执行广泛多种功能中的任一者,例如存储器存储、数据处理及/或其它合适功能。因此,代表性***480可包含但不限于手持式装置(例如移动电话、平板计算机、数字读取器及数字音频播放器)、计算机、载具、器具及其它产品。***480的组件可容纳于单一单元中或遍及多个互连单元(例如经由通信网络)而分布。***480的组件还可包含远程装置及广泛多种计算机可读媒体中的任一者。
从前文应了解,尽管已出于说明的目的而在本文描述技术的特定实施例,但可在不偏离本发明的情况下进行各种修改。此外,在其它实施例中,还可组合或消除在特定实施例的上下文中描述的新技术的某些方面。此外,尽管与新技术的某些实施例相关联的优势已在这些实施例的上下文中描述,但其它实施例也可展现这些优势,且并非所有实施例必定需要展现属于技术的范围的这些优势。因此,本发明及相关联的技术可涵盖未在本文中明确展示或描述的其它实施例。
Claims (24)
1.一种存储器***,其包括:
存储器阵列,其包含多个存储器胞元;及
控制器,其耦合至所述存储器阵列,所述控制器经配置以:
选择存储有效数据的垃圾收集GC源块,
计算用于表示所述GC源块内的所述有效数据的量的用于所述GC源块的有效数据度量,及
基于所述有效数据度量指定用于可用存储器块的存储模式,
其中:
所述可用存储器块的存储器胞元经配置以存储多达N个位并且处于擦除状态,且
所述存储模式用于将所述存储器胞元配置为高速缓冲存储器,所述高速缓冲存储器存储用于后续或即将到来的数据写入的M个位,其中M<N。
2.根据权利要求1所述的存储器***,其中所述控制器经进一步配置以基于比较所述有效数据度量与决策阈值来指定用于所述存储模式的单层胞元SLC模式。
3.根据权利要求2所述的存储器***,其中所述控制器经配置以基于表示存储于所述GC源块中的所述有效数据的阈值量的所述决策阈值指定所述SLC模式,其中所述阈值量是可配置的,且大于零并小于所述GC源块的总容量的25%。
4.根据权利要求3所述的存储器***,其中所述阈值量为所述GC源块的总容量的10%。
5.根据权利要求1所述的存储器***,其中所述控制器经进一步配置以针对由用于所述后续或即将到来的数据写入的主机光标所指示的所述可用存储器块指定所述存储模式。
6.根据权利要求1所述的存储器***,其中所述控制器经进一步配置以针对由用于所述后续或即将到来的数据写入的GC光标所指示的所述可用存储器块指定所述存储模式。
7.根据权利要求1所述的存储器***,其中所述控制器经进一步配置以:
确定用于所述存储器阵列的低逻辑饱和状态;及
基于所述低逻辑饱和状态指定用于所述存储模式的SLC模式。
8.根据权利要求1所述的存储器***,其中所述控制器经配置以将所述存储模式指定为在稳态下的SLC模式。
9.根据权利要求8所述的存储器***,其中:
所述存储器阵列包含被指定为静态高速缓存的静态SLC块,其中所述静态SLC块每胞元存储一个位;及
所述控制器经进一步配置以针对用于利用能够持有所述数据的多个位的附加层胞元XLC单元的动态SLC高速缓冲存储功能指定所述存储模式,以在所述SLC模式中操作及除了所述静态高速缓冲之外每胞元存储一个位作为所述高速缓冲存储器。
10.根据权利要求1所述的存储器***,其中所述控制器经配置以当所述有效数据度量不小于决策阈值时指定用于所述存储模式的XLC模式。
11.根据权利要求1所述的存储器***,其中所述控制器经配置以选择包含在SLC模式中操作的所述存储器胞元的分组的所述GC源块。
12.根据权利要求1所述的存储器***,其中所述存储器胞元是非易失性的。
13.根据权利要求1所述的存储器***,其中所述控制器经配置以将所述存储模式指定为用于所述后续或即将到来的数据写入的SLC模式,而不管先前在所述SLC模式中写入的所述数据的量。
14.根据权利要求1所述的存储器***,其中所述控制器经配置以将所述存储模式指定为用于所述后续或即将到来的数据写入的SLC模式,而不管与用于特性化先前存储的数据的性能模型相关联的数据合意性度量。
15.一种操作包含控制器及包含存储器胞元的存储器阵列的存储器***的方法,所述方法包括:
选择存储有效数据的GC源块;
计算用于表示所述GC源块内的所述有效数据的量的用于所述GC源块的有效数据度量;及
基于所述有效数据度量指定用于可用存储器块的存储模式,
其中:
所述可用存储器块的存储器胞元经配置以存储多达N个位并且处于擦除状态,且
所述存储模式用于将所述存储器胞元配置为高速缓冲存储器,所述高速缓冲存储器存储用于后续或即将到来的数据写入的M个位,其中M<N。
16.根据权利要求15所述的方法,其中指定所述存储模式包含针对由用于所述后续或即将到来的数据写入的主机光标所指示的所述可用存储器块指定所述存储模式。
17.根据权利要求15所述的方法,其中指定所述存储模式包含针对由用于所述后续或即将到来的数据写入的GC光标所指示的所述可用存储器块指定所述存储模式。
18.根据权利要求15所述的方法,其中指定所述存储模式包含当所述有效数据度量不小于决策阈值时指定用于所述存储模式的XLC模式。
19.根据权利要求15所述的方法,其中指定所述存储模式包含当所述有效数据度量小于决策阈值时指定用于所述存储模式的SLC模式。
20.根据权利要求19所述的方法,其中指定所述SLC模式包含:不管先前在所述SLC模式中写入的所述数据的量、不管与用于特性化先前存储的数据的性能模型相关联的数据合意性度量或其组合,而指定所述SLC模式。
21.根据权利要求19所述的方法,其中指定所述SLC模式包含基于表示存储于所述GC源块中的所述有效数据的阈值量的所述决策阈值指定所述SLC模式,其中所述阈值量是可配置的,且大于零并小于所述GC源块的总容量的25%。
22.根据权利要求21所述的方法,其中指定所述SLC模式包含将所述阈值量配置至所述GC源块的总容量的10%。
23.一种操作包含控制器及包含存储器胞元的存储器阵列的存储器***的方法,所述方法包括:
在稳态下在所述存储器胞元中写入数据;
选择用于表示所述存储器胞元的分组的GC源块;
其中所述GC源块为经配置以将有效数据复制至另一组存储器胞元及在使所述GC源块有用于后续或即将到来的数据写入时擦除存储于GC源块中的信息的GC功能的目标;
计算用于表示存储于所述GC源块内的所述有效数据的量的用于所述GC源块的有效数据度量;及
当所述有效数据度量小于决策阈值时指定用于可用存储器块的SLC模式,
其中:
所述可用存储器块的存储器胞元是XLC单元并且处于擦除状态,且
所述SLC模式是用于操作所述XLC单元,所述XLC单元能够持有多个位以每胞元存储一个位作为用于所述后续或即将到来的数据写入的高速缓冲存储器。
24.根据权利要求23所述的方法,其中指定所述SLC模式包含针对由主机光标或GC光标所指示的所述可用存储器块指定所述SLC模式。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/693,178 US10509722B2 (en) | 2017-08-31 | 2017-08-31 | Memory device with dynamic cache management |
US15/693,178 | 2017-08-31 | ||
PCT/US2018/046816 WO2019046020A1 (en) | 2017-08-31 | 2018-08-16 | MEMORY DEVICE HAVING DYNAMIC CACHE MANAGEMENT |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111095226A CN111095226A (zh) | 2020-05-01 |
CN111095226B true CN111095226B (zh) | 2023-11-03 |
Family
ID=65435247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880056006.7A Active CN111095226B (zh) | 2017-08-31 | 2018-08-16 | 具有动态高速缓冲存储器管理的存储器装置 |
Country Status (6)
Country | Link |
---|---|
US (5) | US10509722B2 (zh) |
EP (1) | EP3676714A4 (zh) |
KR (1) | KR102419541B1 (zh) |
CN (1) | CN111095226B (zh) |
TW (1) | TWI711926B (zh) |
WO (1) | WO2019046020A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10509722B2 (en) | 2017-08-31 | 2019-12-17 | Micron Technology, Inc. | Memory device with dynamic cache management |
KR102593541B1 (ko) * | 2018-11-29 | 2023-10-25 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작방법 |
KR20200116354A (ko) * | 2019-04-01 | 2020-10-12 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
US11074177B2 (en) * | 2019-06-19 | 2021-07-27 | Micron Technology, Inc. | Garbage collection adapted to host write activity |
US10877882B1 (en) * | 2019-06-19 | 2020-12-29 | Micron Technology, Inc. | Garbage collection adapted to user device access |
CN110546709B (zh) * | 2019-07-12 | 2021-11-23 | 长江存储科技有限责任公司 | 提供坏列修复的存储器设备和操作其的方法 |
DE102019215292A1 (de) * | 2019-10-04 | 2021-04-08 | Robert Bosch Gmbh | Datenstruktur, Speichermittel und Vorrichtung |
TWI729674B (zh) * | 2020-01-13 | 2021-06-01 | 慧榮科技股份有限公司 | 資料儲存裝置及其垃圾蒐集方法 |
TWI791981B (zh) * | 2020-04-30 | 2023-02-11 | 群聯電子股份有限公司 | 資料寫入方法、記憶體控制電路單元以及記憶體儲存裝置 |
CN112783656B (zh) * | 2021-01-29 | 2024-04-30 | 杭州网易智企科技有限公司 | 内存管理方法、介质、装置和计算设备 |
TWI814590B (zh) * | 2022-09-26 | 2023-09-01 | 慧榮科技股份有限公司 | 資料處理方法及對應之資料儲存裝置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103339617A (zh) * | 2011-02-02 | 2013-10-02 | 美光科技公司 | 存储器***中的至少半自主模块及其方法 |
CN103688247A (zh) * | 2011-06-15 | 2014-03-26 | 苹果公司 | 混合slc/mlc存储器中的块管理方案 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8843691B2 (en) | 2008-06-25 | 2014-09-23 | Stec, Inc. | Prioritized erasure of data blocks in a flash storage device |
US9245653B2 (en) * | 2010-03-15 | 2016-01-26 | Intelligent Intellectual Property Holdings 2 Llc | Reduced level cell mode for non-volatile memory |
US8656256B2 (en) | 2010-07-07 | 2014-02-18 | Stec, Inc. | Apparatus and method for multi-mode operation of a flash memory device |
JP5066241B2 (ja) | 2010-09-24 | 2012-11-07 | 株式会社東芝 | メモリシステム |
US9251055B2 (en) * | 2012-02-23 | 2016-02-02 | Kabushiki Kaisha Toshiba | Memory system and control method of memory system |
US9430376B2 (en) | 2012-12-26 | 2016-08-30 | Western Digital Technologies, Inc. | Priority-based garbage collection for data storage systems |
US10509722B2 (en) | 2017-08-31 | 2019-12-17 | Micron Technology, Inc. | Memory device with dynamic cache management |
JP7053399B2 (ja) * | 2018-07-31 | 2022-04-12 | キオクシア株式会社 | 情報処理システム |
-
2017
- 2017-08-31 US US15/693,178 patent/US10509722B2/en active Active
-
2018
- 2018-08-16 EP EP18850118.3A patent/EP3676714A4/en active Pending
- 2018-08-16 WO PCT/US2018/046816 patent/WO2019046020A1/en unknown
- 2018-08-16 KR KR1020207009337A patent/KR102419541B1/ko active IP Right Grant
- 2018-08-16 CN CN201880056006.7A patent/CN111095226B/zh active Active
- 2018-08-27 TW TW107129734A patent/TWI711926B/zh active
-
2019
- 2019-11-27 US US16/697,724 patent/US11093385B2/en active Active
-
2021
- 2021-07-13 US US17/374,906 patent/US11593261B2/en active Active
-
2023
- 2023-02-21 US US18/172,205 patent/US11853205B2/en active Active
- 2023-12-22 US US18/395,363 patent/US20240126690A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103339617A (zh) * | 2011-02-02 | 2013-10-02 | 美光科技公司 | 存储器***中的至少半自主模块及其方法 |
CN103688247A (zh) * | 2011-06-15 | 2014-03-26 | 苹果公司 | 混合slc/mlc存储器中的块管理方案 |
Also Published As
Publication number | Publication date |
---|---|
KR20200037882A (ko) | 2020-04-09 |
US20190065366A1 (en) | 2019-02-28 |
US20210342261A1 (en) | 2021-11-04 |
US11093385B2 (en) | 2021-08-17 |
KR102419541B1 (ko) | 2022-07-11 |
WO2019046020A1 (en) | 2019-03-07 |
US20240126690A1 (en) | 2024-04-18 |
CN111095226A (zh) | 2020-05-01 |
US20230195615A1 (en) | 2023-06-22 |
EP3676714A4 (en) | 2021-06-09 |
US11853205B2 (en) | 2023-12-26 |
US11593261B2 (en) | 2023-02-28 |
TWI711926B (zh) | 2020-12-01 |
US20200097402A1 (en) | 2020-03-26 |
TW201921252A (zh) | 2019-06-01 |
US10509722B2 (en) | 2019-12-17 |
EP3676714A1 (en) | 2020-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111095226B (zh) | 具有动态高速缓冲存储器管理的存储器装置 | |
US11544188B2 (en) | Memory device with dynamic storage mode control | |
EP2715548B1 (en) | Dynamic memory cache size adjustment in a memory device | |
US11874772B2 (en) | Garbage collection adapted to host write activity | |
US20140043901A1 (en) | Nonvolatile memory device and operating method with variable memory cell state definitions | |
US11972294B2 (en) | Allocation schema for a scalable memory area | |
US9465539B2 (en) | Operation management in a memory device | |
US9053011B2 (en) | Selective protection of lower page data during upper page write | |
US20210026633A1 (en) | Memory system, memory controller, and method for operating memory system | |
US11307942B2 (en) | Memory system, memory controller and method for operating memory controller | |
CN114415949B (zh) | 扫描回收block方法、***、存储介质及设备 | |
US11954349B2 (en) | Memory system for executing a target operation based on a program state of a super memory block and operating method thereof |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |