CN114281251B - 面向3d tlc闪存存储器的数据分配与重编程优化方法 - Google Patents
面向3d tlc闪存存储器的数据分配与重编程优化方法 Download PDFInfo
- Publication number
- CN114281251B CN114281251B CN202111506480.5A CN202111506480A CN114281251B CN 114281251 B CN114281251 B CN 114281251B CN 202111506480 A CN202111506480 A CN 202111506480A CN 114281251 B CN114281251 B CN 114281251B
- Authority
- CN
- China
- Prior art keywords
- data
- hot
- request
- flash memory
- reprogramming
- 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
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Read Only Memory (AREA)
Abstract
本发明涉及一种面向3D TLC闪存存储器的数据分配与重编程优化方法,属于闪存性能技术领域。包括以下步骤:S1:借助闪存控制器缓冲区,缓存临时访问的请求数据,并根据请求数据的访问特征,将数据划分为冷热读写数据;S2:根据热写数据的热度,对热写数据进行分类,建立多级热度链表;S3:根据请求数据的类别与热度,将两个热度最高的热写数据与一个热读数据进行组合,分别存放于一个word line的CSB、LSB、MSB页面;S4:根据3D闪存重编程的限制层数,设计基于限制层数的重编程方法。本发明提出了相应的数据分配算法与重编程,实现闪存控制器层,提高闪存存储器的读写性。
Description
技术领域
本发明属于闪存性能技术领域,涉及一种面向3DTLC闪存存储器的数据分配与重编程优化方法。
背景技术
随着大数据时代的到来,对存储***的容量、性能和可靠性等方面都提出了更高的要求。在传统的存储***中,以平面闪存为主。与二维闪存不同,三维闪存通过在垂直方向堆叠闪存单元来增加容量。一个典型的三维闪存块是由数百层组成的。一般来说,每条字线包含64K到128K的闪存单元,它可以是SLC(单层存储单元模式)、MLC(双层存储单元模式)、TLC(双三层存储单元模式)或QLC(四层存储单元模式)。一个闪存单元是一个浮动门晶体管,它可以在浮动门中存储不同的电荷,形成不同的电压。电压的范围可以分为多个电压区间来代表不同的值。近年来因为三维堆叠(3D)闪存具有更好的性能和存储密度,现在先进的存储设备都是基于3D闪存的。所以,如何优化3D闪存成为了目前存储领域的研究热点。
由于对读取LSB(最低有效位)、CSB(中间有效位)和MSB(最高有效位)闪存单元上读取不同位置数据读取时延不同。如果LSB或CSB上的数据无效,为了减少识别CSB或MSB电压的次数,设计了一种无效数据感知(IDA)编码技术来合并重复的电压状态。如图三所示,如果LSB和CSB位无效,电压状态P1、P2和P5可以移到P5,同时,P0、P3和P4可以移到P7。同样地,如果LSB位无效,P1、P2、P3或P4可以分别移到P8、P7、P6或P5。这可以使CSB页的读取延迟接近LSB页的读取延迟,MSB页的读取延迟分别接近CSB页或LSB页的读取延迟。而它的有效性受到无效数据位置的限制,无效数据在LSB、CSB和SLC页上存在的概率相同。
通过实验验证后发现,在大部分数据中,有相当大比例的数据是频繁更新的,这些数据中,热读较大的数据又占了很大的比例,也就是说一部分数据会在较短的时间内更新,现有技术中没有针对这方面进行优化和改善的技术。
发明内容
有鉴于此,本发明的目的在于提供一种面向3DTLC闪存存储器的数据分配与重编程优化方法。通过冷热数据识别,对数据进行冷热区分,修改数据的分配方式,本发明优化了传统重编程方法的性能。
为达到上述目的,本发明提供如下技术方案:
一种面向3D TLC闪存存储器的数据分配与重编程优化方法,包括以下步骤:
S1:借助闪存控制器缓冲区,缓存临时访问的请求数据,并根据请求数据的访问特征,将数据划分为热读、热写、冷读、冷写的数据;
S2:根据热写数据的热度,进一步对热写数据进行分类,建立多级热度链表,链表级别越高的数据热度越高;
S3:根据请求数据的类别与热度,提出新的数据分配优化方法,将两个热度最高的热写数据与一个热读数据进行组合,分别存放于一个word line的CSB、LSB、MSB页面,以提升平均写请求性能;
S4:根据3D闪存重编程的限制层数,设计出基于限制层数的重编程方法,在CSB与LSB页面被更新后,提升对应MSB页面热读数据的读性能。
进一步,所述步骤S1包括:设定在SSD的控制器中通过请求缓冲区来存储数据,通过热度过滤器来区分数据冷热;当请求队列进入热度过滤器中,先判断数据是否第一次写入,如果是,则记录数据的写入时间,将数据存储到传统编程区中进行传统编程操作;如果不是,通过热度过滤器对数据进行冷热区分,将区分出的热数据保存到请求缓冲区。
进一步,所述步骤S1具体为,根据请求数据的访问操作,将数据划分为读数据、写数据,计算请求数据的两次访问时间间隔,若时间间隔小于一秒,则将数据划分为热读数据或热写数据,否则,划分为冷读数据或冷写数据。
进一步,在所述步骤S2中,在控制器的请求缓冲区中维护有很多特殊链表,来保存具有相同更新时间的热数据,存储在同一链表中的所有数据热度相同,这些数据都将会在同一个时间点更新,并且在这些链表中始终有一条时间线,每隔一个时间段,时间线都会向前自动推进,链表中存储的数据将会迁移到与当前更新时间对应的链表中;设定规定的固定时间段为m,将请求缓冲区中的热数据保存到与其更新时间对应的链表中,判断数据链表是否经过了时间m,如果是,就将原数据链表中的数据迁移到对应数据更新时间m的链表中。
进一步,所述步骤S2具体为:数据的热度表示数据下一次被访问的预计时间,链表级别越高热度越高,代表被数据越快被访问;建立热度链表步骤包括:
S21:新的请求数据以最近两次访问的时间间隔作为热度,加入对应链表;
S22:每隔一段时间m,对链表中数据的热度更新,数据热度减去时间m,并重新加入新的链表。
进一步,所述步骤S3具体包括:取两个链表前端部分的同时更新的热数据,缓冲空间向热度过滤器发送一个冷数据请求,请求到的一个频繁读的冷数据与链表中的热写数据一同写入TLC闪存单元中,将两个同时更新的热数据写入闪存单元的前两位LSB和CSB中,将频繁读的冷数据写入闪存单元的最后一位MSB中,当数据更新发生时,闪存的单元的前两位LSB和CSB都无效,只剩下最高有效位MSB,随后应用重编程方法,合并TLC原有的八个电压状态,将重叠的部分合并到最终只剩下两个有效的电压状态,当最高有效位MSB保存的是频繁读的数据的时候,本发明能非常有效地提升重编程的性能。
进一步,所述步骤S3中,当有一个新的数据请求时,根据新的数据分配优化方法进行分配,包括以下步骤:
S31:判定请求数据是否为热读数据,若是,则读数据并标记该数据,否则执行步骤S32;
S32:判定请求数据是否为冷读数据,则读取该数据,否则执行步骤S33;
S33:判定请求数据是否为热写数据,若是热数据,则执行步骤S34,若不是,则执行步骤S35;
S34:判定在FLASH控制器中的缓冲区是否有空闲空间,若有空闲空间,则将请求数据存储到缓冲区中,否则,将请求数据直接写到闪存中;
S35:判定在请求缓冲区当中的热写请求数据是否大于2,若大于2,则选择请求缓冲区的两个热写请求数据和当前请求的冷写数据一起写进闪存中,并且将两个热写请求数据放于同一条wordline上的LSB和CSB上,将冷写请求放置于MSB上,否则将请求数据直接写入闪存中。
进一步,在所述步骤S4中,当数据进入请求缓冲区的时候,先判断缓冲空间是否已满,若是缓冲空间已满,则判断链表前端是否有可剔除的数据,若有可剔除的数据则剔除,再判断一次缓冲空间是否已满,若没有可剔除的数据,则将该数据与缓存中其他数据一起写回闪存,因此本发明不能保证每次写回都是有两个同时更新的数据;若缓冲空间未满,则进行步骤S2、步骤S3的操作。
进一步,在所述步骤S4中,基于限制层数的重编程方法包括以下步骤:
S41:每次3D闪存新的层次时,检查最大限制层次数内的无效LSB页面、CSB页面;
S42:当同一条wordline上的LSB和CSB同时失效时进行重编程,重编程可以减少MSB上读取数据检测电压的次数而减少读取MSB上数据的时延;
S43:对无效LSB与CSB的wordline进行重编程的同时,将新写入的数据同时写入闪存块中,分担重编层开销。
本发明的有益效果在于:本发明挖掘了冷热数据布局对重编程操作的性能提升,减少了数据读写时间开销和确定单元耐久性的擦除频率,提高编程速度,并增加存储量,优化了闪存的寿命和性能。
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。
附图说明
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:
图1为I/O请求的数据分配方式;
图2为数据迁移时的数据分配方式;
图3为数据分配的四种情况;
图4是无效感知编码技术的电压状态转移图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
请参阅图1~图4,本发明通过利用冷热数据区分将数据布局到闪存单元的理想位置,调用本发明的新型重编程方法来提升闪存的性能。在此过程中,数据会通过热度过滤器进入到缓冲空间中,若闪存空间已满且数据链表中没有可剔除的数据,则将数据与缓存中其他数据一起写回闪存页。
图1是I/O请求的数据分配方式的流程,记读情况记为r,写情况记为w,冷情况记为c,热情况记为h,从步骤101开始,然后:
步骤102:设定在SSD的控制器中通过请求缓冲区来存储数据,根据两次对该页的请求时间做差值,当差值小于一定的阈值时,我们设该请求为热请求,大于阈值时,设定为冷请求,如果判断该请求为热读情求,则执行步骤103;若为冷读请求,执行步骤104;若为热写请求,执行步骤105;其他执行步骤108。
步骤103:如果在步骤102中判断出该请求为热请求,并且该请求是读取闪存页上某位置的数据时则正常读取该位置数据并标记该数据页。
步骤104:如果在步骤102中判断出该读请求中所读数据为冷读数据,则正常读取该位置上的数据。
步骤105:如果在步骤102中判断该请求情况为热写,则判断在FLASH控制器中的buffer是否有空闲空间,如果有则执行步骤106,如果没有则执行步骤107。
步骤106:在步骤105中判断如果在buffer中有空闲空间则直接将请求所需要写的数据直接写到FLASH控制器中的buffer中。
步骤107:在步骤105判断中如果在buffer中没有空闲空间,此时将数据直接写到到FLASH闪存页当中。
步骤108:在步骤102中判断请求情况为其他,然后判断在buffer中的热写页是否大于2,若在buffer中热写页数量大于2,则执行步骤109;否则执行步骤110。
步骤109:在步骤108中判断在buffer中热写页大于2,此时选择两个热写页并执行数据分配方案1将热写数据写到LSB和CSB上将冷写数据写到MSB上。
步骤110:在步骤108中判断在buffer中热写页小于等于2,此时将请求页面写入FLASH闪存页中。
步骤111,I/O请求的数据分配方式结束。
流程图2是数据迁移时的数据分配方式的流程图,从步骤101开始,然后:
将读情况记为r,写情况记为w,冷情况记为c,热情况记为h(例如热写页记录为hw)
步骤102:若此时页面计数器当中有hw≥2&hr≥1则进入循环,此循环包括步骤102,103,104。
步骤103:在请求缓冲区Buffer中挑选两个热写页和一个热读页执行2号数据分配策略,此时LSB和CSB上被分配了热写数据,MSB上被分配了热读数据。
步骤104:因为在103中将buffer中一部分请求完成,则需要在在页面计数器中更新页面情况,即hw=hw-2,hr=hr-1。
步骤105:判断hr是否大于0,如果是则执行步骤107,或者步骤109或者步骤111。
步骤106:若步骤105中判断出hr不满足情况即hr<=0,则将剩余页面写入FLASH闪存页中。
步骤107:若步骤105中判断出满足情况即hr>0时,判断是否满足满足1<2*hr≤cr,如果满足则执行步骤108,如果不满足则执行步骤109或步骤111。
步骤108:若步骤107中满足1<2*hr≤cr此时执行3号数据分配方案即将两个热写数据分别写到LSB和CSB上,将热读数据写到MSB上,否则执行步骤111。
步骤109:若步骤105中判断出hr满足情况即hr>0,判断是否满足满足cr<2*hr<4cr。
步骤110:在步骤108,若步骤107中满足cr<2*hr<4cr执行(2hr-cr/3)次数据分配方案3即将两个热写数据分别写到LSB和CSB上,将热读数据写到MSB上;和执行(4cr-hr)/3次数据分配方案4将两个热读数据写到LSB和CSB上将一个冷读数据写到MSB上。
步骤111:若步骤105中判断出hr满足情况即hr>0,判断是否满足满足hr≥2cr。
步骤112:在步骤111,若步骤107中满足hr≥2cr执行3号数据分配方案,将两个热写数据分别写到LSB和CSB上,将热读数据写到MSB上。
步骤113:数据迁移时的数据分配方式结束。
图3说明了数据分配的四种情况,分配情况1:首先将两个热写数据页分别编程为一条子线中写时延较低的LSB页和CSB页中,提高写性能。分配情况2,即将两个热写的请求写入LSB和CSB上以提高写性能和读性能。如果buffer中的热写数量小于2,则将热读数据页存入flash控制器的缓冲区中。如果缓冲区的大小不足以存储所有热读页面,则根据其余读数据页面中冷热读数据的比例,我们选择分配情况3和分配情况4来提高读取性能。其中分配情况3的方案是将热读的数据放在LSB上,将冷读的数据放在CSB和MSB上。分配情况4是将热读的数据放在LSB和CSB上,冷读的数据放在MSB上。
图4是无效感知编码技术的电压状态转移图,用于LSB或CSB上的数据无效时合并重复电压,以减少CSB或MSB中读取识别电压的次数。如图4所示,如果LSB和CSB位无效,则电压状态P1、P2和P5可以移动到P5,同时P0、P3和P4可以移动到P7。类似地,如果LSB位无效,则P1、P2、P3或P4可以分别移动到P8、P7、P6或P5。由于在3D TLC SSD中当重编程层数大于2的时候编程错误会大幅度提升,所以我们设定的重编程的最大层数设置为2以保证正确性。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (5)
1.一种面向3DTLC闪存存储器的数据分配与重编程优化方法,其特征在于:包括以下步骤:
S1:借助闪存控制器缓冲区,缓存临时访问的请求数据,并根据请求数据的访问特征,将数据划分为热读、热写、冷读、冷写的数据;
S2:根据热写数据的热度,进一步对热写数据进行分类,建立多级热度链表,链表级别越高的数据热度越高;
S3:根据请求数据的类别与热度,提出新的数据分配优化方法,将两个热度最高的热写数据与一个热读数据进行组合,分别存放于一个wordline的CSB、LSB、MSB页面,以提升平均写请求性能;所述步骤S3具体包括:取两个链表前端部分的同时更新的热数据,缓冲空间向热度过滤器发送一个冷数据请求,请求到的一个频繁读的冷数据与链表中的热写数据一同写入TLC闪存单元中,将两个同时更新的热数据写入闪存单元的前两位LSB和CSB中,将频繁读的冷数据写入闪存单元的最后一位MSB中,当数据更新发生时,闪存的单元的前两位LSB和CSB都无效,只剩下最高有效位MSB,随后应用重编程方法,合并TLC原有的八个电压状态,将重叠的部分合并到最终只剩下两个有效的电压状态;
所述步骤S3中,当有一个新的数据请求时,根据新的数据分配优化方法进行分配,包括以下步骤:
S31:判定请求数据是否为热读数据,若是,则读数据并标记该数据,否则执行步骤S32;
S32:判定请求数据是否为冷读数据,则读取该数据,否则执行步骤S33;
S33:判定请求数据是否为热写数据,若是热数据,则执行步骤S34,若不是,则执行步骤S35;
S34:判定在FLASH控制器中的缓冲区是否有空闲空间,若有空闲空间,则将请求数据存储到缓冲区中,否则,将请求数据直接写到闪存中;
S35:判定在请求缓冲区当中的热写请求数据是否大于2,若大于2,则选择请求缓冲区的两个热写请求数据和当前请求的冷写数据一起写进闪存中,并且将两个热写请求数据放于同一条wordline上的LSB和CSB上,将冷写请求放置于MSB上,否则将请求数据直接写入闪存中;
S4:根据3D闪存重编程的限制层数,设计出基于限制层数的重编程方法,在CSB与LSB页面被更新后,提升对应MSB页面热读数据的读性能;在所述步骤S4中,当数据进入请求缓冲区的时候,先判断缓冲空间是否已满,若是缓冲空间已满,则判断链表前端是否有可剔除的数据,若有可剔除的数据则剔除,再判断一次缓冲空间是否已满,若没有可剔除的数据,则将该数据与缓存中其他数据一起写回闪存;若缓冲空间未满,则进行步骤S2、步骤S3的操作;所述基于限制层数的重编程方法包括以下步骤:
S41:每次3D闪存新的层次时,检查最大限制层次数内的无效LSB页面、CSB页面;
S42:当同一条wordline上的LSB和CSB同时失效时进行重编程;
S43:对无效LSB与CSB的wordline进行重编程的同时,将新写入的数据同时写入闪存块中,分担重编层开销。
2.根据权利要求1所述的面向3DTLC闪存存储器的数据分配与重编程优化方法,其特征在于:所述步骤S1包括:设定在SSD的控制器中通过请求缓冲区来存储数据,通过热度过滤器来区分数据冷热;当请求队列进入热度过滤器中,先判断数据是否第一次写入,如果是,则记录数据的写入时间,将数据存储到传统编程区中进行传统编程操作;如果不是,通过热度过滤器对数据进行冷热区分,将区分出的热数据保存到请求缓冲区。
3.根据权利要求2所述的面向3DTLC闪存存储器的数据分配与重编程优化方法,其特征在于:所述步骤S1具体为,根据请求数据的访问操作,将数据划分为读数据、写数据,计算请求数据的两次访问时间间隔,若时间间隔小于一秒,则将数据划分为热读数据或热写数据,否则,划分为冷读数据或冷写数据。
4.根据权利要求1所述的面向3DTLC闪存存储器的数据分配与重编程优化方法,其特征在于:在所述步骤S2中,在控制器的请求缓冲区中维护有很多特殊链表,来保存具有相同更新时间的热数据,存储在同一链表中的所有数据热度相同,这些数据都将会在同一个时间点更新,并且在这些链表中始终有一条时间线,每隔一个时间段,时间线都会向前自动推进,链表中存储的数据将会迁移到与当前更新时间对应的链表中;设定规定的固定时间段为m,将请求缓冲区中的热数据保存到与其更新时间对应的链表中,判断数据链表是否经过了时间m,如果是,就将原数据链表中的数据迁移到对应数据更新时间m的链表中。
5.根据权利要求4所述的面向3DTLC闪存存储器的数据分配与重编程优化方法,其特征在于:所述步骤S2具体为:数据的热度表示数据下一次被访问的预计时间,链表级别越高热度越高,代表被数据越快被访问;建立热度链表步骤包括:
S21:新的请求数据以最近两次访问的时间间隔作为热度,加入对应链表;
S22:每隔一段时间m,对链表中数据的热度更新,数据热度减去时间m,并重新加入新的链表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111506480.5A CN114281251B (zh) | 2021-12-10 | 2021-12-10 | 面向3d tlc闪存存储器的数据分配与重编程优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111506480.5A CN114281251B (zh) | 2021-12-10 | 2021-12-10 | 面向3d tlc闪存存储器的数据分配与重编程优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114281251A CN114281251A (zh) | 2022-04-05 |
CN114281251B true CN114281251B (zh) | 2023-08-11 |
Family
ID=80871617
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111506480.5A Active CN114281251B (zh) | 2021-12-10 | 2021-12-10 | 面向3d tlc闪存存储器的数据分配与重编程优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114281251B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115794446B (zh) * | 2023-01-18 | 2023-05-09 | 苏州浪潮智能科技有限公司 | 一种消息处理方法、装置、电子设备和存储介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103488583A (zh) * | 2013-09-09 | 2014-01-01 | 华中科技大学 | 一种高性能高可靠的固态盘实现方法 |
WO2015005634A1 (ko) * | 2013-07-08 | 2015-01-15 | 주식회사 윌러스표준기술연구소 | 메모리 시스템 및 이의 제어 방법 |
CN105447059A (zh) * | 2014-09-29 | 2016-03-30 | 华为技术有限公司 | 一种数据处理方法及装置 |
CN107045892A (zh) * | 2015-11-26 | 2017-08-15 | 三星电子株式会社 | 非易失性存储器和包括非易失性存储器的存储装置 |
CN107220185A (zh) * | 2017-05-23 | 2017-09-29 | 建荣半导体(深圳)有限公司 | 基于闪存的数据存储方法、装置以及闪存芯片 |
CN107729535A (zh) * | 2017-11-17 | 2018-02-23 | 中国科学技术大学 | 一种键值数据库内布隆过滤器的配置方法 |
CN108646977A (zh) * | 2018-03-07 | 2018-10-12 | 深圳忆联信息***有限公司 | 一种ssd冷热数据判断的方法及垃圾回收方法 |
CN109164975A (zh) * | 2018-06-28 | 2019-01-08 | 华为技术有限公司 | 一种将数据写入固态硬盘的方法以及固态硬盘 |
CN109923530A (zh) * | 2016-11-08 | 2019-06-21 | 美光科技公司 | 混合式存储器中的数据重新定位 |
CN111241003A (zh) * | 2018-11-29 | 2020-06-05 | 美光科技公司 | 使用数据写入计数器使非易失性存储器的耗损均衡 |
CN111880744A (zh) * | 2020-07-29 | 2020-11-03 | 苏州浪潮智能科技有限公司 | 一种数据迁移方法、装置、电子设备和介质 |
CN112230843A (zh) * | 2019-07-15 | 2021-01-15 | 美光科技公司 | 限制热-冷交换磨损均衡 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10013177B2 (en) * | 2015-04-20 | 2018-07-03 | Hewlett Packard Enterprise Development Lp | Low write amplification in solid state drive |
US10235290B2 (en) * | 2015-06-26 | 2019-03-19 | Advanced Micro Devices, Inc. | Hot page selection in multi-level memory hierarchies |
KR102456176B1 (ko) * | 2020-05-21 | 2022-10-19 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
KR20210077230A (ko) * | 2019-12-17 | 2021-06-25 | 에스케이하이닉스 주식회사 | 메모리 시스템의 동작 방법 및 장치 |
KR20210099930A (ko) * | 2020-02-05 | 2021-08-13 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
-
2021
- 2021-12-10 CN CN202111506480.5A patent/CN114281251B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015005634A1 (ko) * | 2013-07-08 | 2015-01-15 | 주식회사 윌러스표준기술연구소 | 메모리 시스템 및 이의 제어 방법 |
CN103488583A (zh) * | 2013-09-09 | 2014-01-01 | 华中科技大学 | 一种高性能高可靠的固态盘实现方法 |
CN105447059A (zh) * | 2014-09-29 | 2016-03-30 | 华为技术有限公司 | 一种数据处理方法及装置 |
CN107045892A (zh) * | 2015-11-26 | 2017-08-15 | 三星电子株式会社 | 非易失性存储器和包括非易失性存储器的存储装置 |
CN109923530A (zh) * | 2016-11-08 | 2019-06-21 | 美光科技公司 | 混合式存储器中的数据重新定位 |
CN107220185A (zh) * | 2017-05-23 | 2017-09-29 | 建荣半导体(深圳)有限公司 | 基于闪存的数据存储方法、装置以及闪存芯片 |
CN107729535A (zh) * | 2017-11-17 | 2018-02-23 | 中国科学技术大学 | 一种键值数据库内布隆过滤器的配置方法 |
CN108646977A (zh) * | 2018-03-07 | 2018-10-12 | 深圳忆联信息***有限公司 | 一种ssd冷热数据判断的方法及垃圾回收方法 |
CN109164975A (zh) * | 2018-06-28 | 2019-01-08 | 华为技术有限公司 | 一种将数据写入固态硬盘的方法以及固态硬盘 |
CN111241003A (zh) * | 2018-11-29 | 2020-06-05 | 美光科技公司 | 使用数据写入计数器使非易失性存储器的耗损均衡 |
CN112230843A (zh) * | 2019-07-15 | 2021-01-15 | 美光科技公司 | 限制热-冷交换磨损均衡 |
CN111880744A (zh) * | 2020-07-29 | 2020-11-03 | 苏州浪潮智能科技有限公司 | 一种数据迁移方法、装置、电子设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114281251A (zh) | 2022-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11232041B2 (en) | Memory addressing | |
KR101495928B1 (ko) | 휘발성 및 비휘발성 메모리를 갖는 하이브리드 고체 메모리 시스템 | |
US20190146911A1 (en) | Memory system and operating method thereof | |
US7953931B2 (en) | High endurance non-volatile memory devices | |
US8180955B2 (en) | Computing systems and methods for managing flash memory device | |
US8806144B2 (en) | Flash storage device with read cache | |
KR101477047B1 (ko) | 메모리 시스템 및 그것의 블록 병합 방법 | |
US8019943B2 (en) | High endurance non-volatile memory devices | |
US7603593B2 (en) | Method for managing bad memory blocks in a nonvolatile-memory device, and nonvolatile-memory device implementing the management method | |
US8296504B2 (en) | Data management method and flash memory storage system and controller using the same | |
US20050015557A1 (en) | Nonvolatile memory unit with specific cache | |
KR20080040426A (ko) | 데이터의 특성에 따라 싱글 레벨 셀 또는 멀티 레벨 셀에데이터를 저장하는 불휘발성 메모리 시스템 | |
CN109471594B (zh) | 一种mlc闪存读写方法 | |
CN110888600B (zh) | 一种面向nand闪存的缓冲区管理方法 | |
US7664906B2 (en) | Flash memory access apparatus and method | |
US9606912B2 (en) | Tracking and utilizing second level map index for recycling of solid state drive blocks | |
US8037236B2 (en) | Flash memory writing method and storage system and controller using the same | |
CN112035061A (zh) | 固态硬盘资源分配方法、装置和存储介质 | |
CN114281251B (zh) | 面向3d tlc闪存存储器的数据分配与重编程优化方法 | |
CN111580754A (zh) | 一种写友好的闪存固态盘缓存管理方法 | |
KR20200145151A (ko) | 맵핑 정보를 축약하는 플래시 변환 계층 구조를 이용하여 메모리 리소스를 관리하는 데이터 저장 장치 | |
CN111352593B (zh) | 一种区分快写和正常写的固态硬盘数据写入方法 | |
CN107391035A (zh) | 一种通过编程错误感知降低固态盘磨损的方法 | |
KR100780963B1 (ko) | 메모리 카드 및 메모리 카드의 구동 방법 | |
Pratibha et al. | Efficient flash translation layer for flash memory |
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 |