CN102789423B - 四池闪存磨损均衡方法 - Google Patents

四池闪存磨损均衡方法 Download PDF

Info

Publication number
CN102789423B
CN102789423B CN201210237998.8A CN201210237998A CN102789423B CN 102789423 B CN102789423 B CN 102789423B CN 201210237998 A CN201210237998 A CN 201210237998A CN 102789423 B CN102789423 B CN 102789423B
Authority
CN
China
Prior art keywords
piece
storage area
data
flash memory
erasable number
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
Application number
CN201210237998.8A
Other languages
English (en)
Other versions
CN102789423A (zh
Inventor
李峰
高美洲
张洪柳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Sinochip Semiconductors Co Ltd
Original Assignee
Shandong Sinochip Semiconductors Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shandong Sinochip Semiconductors Co Ltd filed Critical Shandong Sinochip Semiconductors Co Ltd
Priority to CN201210237998.8A priority Critical patent/CN102789423B/zh
Publication of CN102789423A publication Critical patent/CN102789423A/zh
Application granted granted Critical
Publication of CN102789423B publication Critical patent/CN102789423B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种四池闪存磨损均衡方法,采用多池存储管理结构,引入磨损率的概念,用于标识某块趋于坏块的程度,能够更客观的反应块的磨损。结合可擦写次数,能够更加有效地反映出块的磨损状况,所据以确定的磨损均衡方法能够更准确的实现与非闪存的磨损均衡。

Description

四池闪存磨损均衡方法
技术领域
本发明是关于存储管理所提出的改进,具体是涉及与非闪存(NAND Flash,即与非快闪存储器,简称与非闪存)磨损均衡方法。 
背景技术
随着数码技术的迅猛发展,应用于数码设备且具有非易失性、编程速度快、擦出时间段、省电且体积小特点的与非闪存得到了广泛的应用。 
公知的,与非闪存的读(Read)、写(Program)和擦除(Erase)操作中读和写的基本单位是页,擦除的基本单位是块。对flash的写操作只能在尚未写入的空闲页上进行,并且只能按照从低地址页到高地址页顺序写。如果想要修改某个已经写过的页,只能先擦除整个物理块,然后再写入。 
然而Flash的物理特征决定了它的可擦写次数是有限的,当前技术条件下块的擦除次数多在10万次到100万次之间,只要有一个块的擦除次数达到了上限,数据存储就变得不可靠,会影响整个闪存的读写效率和性能。为延长flash的使用寿命目前我们主要采用两者策略,一种是应尽量减少对块的擦除次数,即当整个块中的页都被标记为空闲页时再擦除。另一种策略是采用高效的磨损均衡处理(wear-levling)。这里主要涉及磨损均衡方法。 
国内外有很多关于磨损均衡算法的研究被提出,例如链表闪存磨损均衡方法,在静态文件与擦除次数最多的块之间进行文件搬移,在这样的过程中必然会增加块的擦写次数;且在给各块擦写次数排序的过程中,增加了内存的开销,进而影响了闪存的写入速度。 
两池闪存磨损均衡方法是把闪存存储数据分成热数据池和冷数据池,该方法在两池数据转换过程中会增加了闪存块的擦写次数,并且不能及时的处理坏块,同时垃圾回收机制也不太好,缺少灵活性。 
三池闪存磨损均衡法将闪存的物理块分成冷数据池、普通数据池和热数据池;并对静态均衡部分进行了改进,降低了额外的磨损,而且提高了闪存总体的执行效率和速度。 
中国CN101266573B提出了一种允许覆盖的闪存均衡磨损循环队列方法,在这样的方法中涉及一个记录点或称之为写指针和一个读点或者称之为读指针,通过对记录点和读点的处理,实现对闪存数据的均匀处理,达到均衡磨损的目的,同时在空间不够时对最早的数据进行覆盖。这种循环队列方式使用起来非常简单,但显然的一点这种存储管理方式可能会导致比较重要的数据的丢失。另一方面,为了避免较少使用数据的丢失,又不得不附加其他的管理策略,看似简单的实现方式,在要求相对较高的条件下,管理方法实现起来反而很困难。 
一种闪存的磨损平衡方法公开在中国CN102081576A发明专利申请公开中,其说明书第0003段对所述两池闪存磨损均衡方法中关于冷、热数据对与非闪存使用寿命的影响的机理进行了系统说明,其中的Hot pool(热池)和Cold pool(冷池)即为存储管理中的两池。基于两池磨损均衡方法的缺陷,该CN102081576A提出了通过精确定义冷热数据和闪存特别是大容量闪存产生的可扩展性问题。所提出的方案中是在两池磨损方法的基础上,维持一个已擦除次数统计表(Erase Count Table),对被分类的冷池和热池进行了更具体的区分,在每个池中又分成了若干个存储子区域,在存储子区域间通过令牌方式实现磨损均衡。在所提供的方案中系统通过已擦除次数统计表来查看每个物理快的磨损情况,为每一个存储子区域维持热数据队列,冷数据队列,空闲块队列和垃圾块队列,具备四池磨损均衡机制的雏形。但其存储区域的分配方式相对零散,管理开销大。另外,该方案存储管理的依据仅限于单纯的对磨损均衡的考量,没有考虑影响数据存储稳定性的数据出错概率。 
另外,与非闪存厂商在与非闪存的生产制造过程中会专门分配一个备用池(一个存储区域,Spare area)来标识坏块,出于制造成本的考虑,坏块在与非闪存出厂前就已经部分(小于与非闪存总容量的2%)存在,该部分用户不可见,可以不考虑。不过需要进行磨损均衡的与非闪存存储区域是使用过程中出现的坏块,已擦出此处统计表在与非闪存中都已存在,同时也都会存在一个坏块列表,CN102081576A所提到的坏快池已经存在,坏块列表用于追踪记录那些在使用中发现的坏块。 
发明内容
如果与非闪存的物理存储单元块中的错误位数超过了纠错码设定的最大纠错位数,纠错码是纠不出错误的,所以此块存储数据不可信,此块就不可用了;显然,若不考虑在闪存控制芯片中纠错码纠不出来码字的情况,只根据擦写次数来判定磨损阈值是有瑕疵的。 
另外,需要注意,由于与非闪存当前存在三种类型,不同类型的与非闪存可擦写次数和出错概率不一致,尤其是某些类型的与非闪存寿命比较短,也容易出错。 
为此,本发明的目的在于提供一种四池闪存磨损均衡方法,进一步提高磨损均衡的效果。 
为解决上述技术问题,本发明采用以下技术方案: 
一种四池闪存磨损均衡方法,把与非闪存的存储空间分成四个存储区域,记为第一至第四存储区域,在给定的可擦写次数条件下,设定一个寿命阈值,把擦写次数超过该寿命阈值的空闲块放入第四存储区域;再设定一个均衡阈值,从而其余的空闲块被进一步地依据擦写次数超过该均衡阈值的条件分入第三存储空间;而进一步留下的空闲块部分地留作备用块而放入所述第四存储区域,余者分配给第一存储区域;
已写入数据的块分配给第二存储区域;
从而,依据数据写入和擦除操作动态的调整各块在四个存储区域间的分配;同时,设定一个因子,取块的可擦写次数与该因子的积为磨损阈值标准,那么所述均衡阈值=磨损阈值标准*A/B+可擦写次数*B;其中A为擦写率,表示块的已擦写次数与可擦写次数的比值;B表示磨损率,表示块实际发生码字错误率与给定的码字错误率上限的比值;
当块的平均擦写次数达到所述均衡阈值时,调大均衡阈值;
其中,所述因子为0.4~0.6。
在依据本发明的四池闪存磨损均衡方法,采用多池存储管理结构,引入磨损率的概念,用于标识某块趋于坏块的程度,能够更客观的反应块的磨损。结合可擦写次数,能够更加有效地反映出块的磨损状况,所据以确定的磨损均衡方法能够更准确的实现与非闪存的磨损均衡。 
上述四池闪存磨损均衡方法,调整均衡阈值的幅度为可擦写次数与当前平均擦写次数的差值与所述因子的积。 
上述四池闪存磨损均衡方法,当有数据写入时,写入被分配的所述第一存储区域的块,并将写有数据的块放入第二存储区域; 
而当第二存储区域的数据块达到所述均衡阈值时,分配一个没有达到所述均衡阈值的空闲块存放搬移过来的所述数据块内的数据,并被放入第二存储区域,对应地,数据块的数据被搬移后放入第三存储区域;
第二存储区域的数据块被擦除而其擦写次数没有达到所述均衡阈值时,形成的空闲块放入第一存储区域;
第一存储区域的块被连续写入时,将 第四存储区域中的备用块转移给第一存储区域,并在存储数据完成且被转移的备用块没有使用完毕时,把剩余的备用块重新放入第四存储区域;
当第三存储区域内的块的擦写次数达到寿命阈值时,将此块放入第四存储区域。
上述四池闪存磨损均衡方法,与非闪存数据整理时,含有第二存储区域的存放的冷数据与第三存储区域的热数据进行交换的第一方案;和 
在第一存储区域或第四存储区域大于第二存储区域时,在容量较大的存储区域中查找擦写次数最少的块存放第三存储区域的热数据,然后将该块转移到第二存储区域的第二方案。
上述四池闪存磨损均衡方法,块的已擦写次数由与非闪存控制器提供,具体是在与非闪存应用软件的逻辑转换层在初始化时加载地址映射表到主机ROM,提取块的物理地址和块所存放的数据的类型,以及块的已擦写次数;依据读取的已擦写次数进行排序,以备调用。 
上述四池闪存磨损均衡方法,所述实际发生的码字错误率的获得方法是读取闪存控制器纠错码中译码器纠正的位数得出,磨损率表示所读取的位数与设定的最大位数的比。 
上述四池闪存磨损均衡方法,所述位数不能大于设定的纠错码最大位数,若某块的纠错码位数超过了最大纠错码位数,则标定该块为坏块。 
上述四池闪存磨损均衡方法,在块的平均擦写次数达到块的可擦写次数的20%时,启动第一次磨损均衡。 
附图说明
图1为依据本发明的一个较佳实施例的块在各持之间的转换流转图。 
具体实施方式
关于与非闪存,按照存储单元或者说按照硬件架构,目前存在三种类型,分别是SLC(Single-Level Cell,单层单元)是1bit/cell,约10万次擦写寿命。MLC(Multi-Level Cell,多层单元)是2bits/cell,约3000-10000次擦写寿命。TLC(Trinary-Level Cell,三阶单元)是3bits/cell,约500次擦写寿命。 
SLC的特点是成本高、容量小、速度快,而MLC的特点是容量大成本低,但是速度慢。由于每个MLC存储单元中存放的资料较多,结构相对复杂,出错的几率会增加,必须进行错误修正,这个动作导致其性能大幅落后于结构简单的SLC闪存。 
TLC的架构(有些地方称3LC)已批量应用于闪存芯片上,这种架构与MLC采用近似原理,只不过MLC是1个单元2个bit,而TLC则是1个单元3个bit, MLC和SLC的差距,TLC在同样的方面比MLC还要差上一大截。与MLC相似的是,这种技术同样是在价格上占了优势,比MLC更便宜,不过寿命/速度则更差于MLC,而且TLC通常是和高制程同时出现的,导致目前一些采用TLC的U盘速度惨不忍睹,寿命更是没底,出错概率更大,更需要进行错误修正。 
显然,对于与非闪存,SLC架构对错误修正有要求,MLC和TLC架构则必须进行错误修正,因此,发明人认为,码字错误率是磨损均衡必须要考虑的问题。 
另外需要注意的是,在背景技术部分已经给出,为了降低成本,与非闪存在出厂时就已经存在坏块,这是当前制作工艺必然的结果。在存在坏块的同时,本领域的技术人员也可以有这样的理解,就是可擦写次数实际上指的是平均可擦写次数,也可以理解为最大可擦写次数,某些块可能在很少的擦写次数内就不可用,成为坏块,而某些块可能超过了最大的可擦写次数,仍然可用。因此,这里仍然需要考虑本文所提出的磨损率问题。 
在闪存控制芯片或者说闪存控制器中提供每个块的擦写次数,嵌入式系统中应用软件中的逻辑转换层中的映射表能够提供块的物理地址和该块所存储数据的类型,根据数据类型和每个块的擦写次数来分各池。主要原因闪存类型不同,他们的擦写次数也不相同,SLC的性能好一些,可擦写次数上限高,而TLC的性能差一些,它的可擦写次数上限低一些,而且它们存储单元存的数据出现错误的概率也不近相同,所以磨损均衡算法也相应的复杂。 
关于动态磨损均衡就是依据物理地址映射表中存放的与非闪存物理各块的擦除次数,决定将数据存放到较少擦除次数的存储块中,对于不是执行数据更新的存储块或者说静态数据存储块则不会被动态损耗平衡盯上,例如一个存放有 50GB mp3 音乐等静态数据的 120GB闪存可以有 70 GB 的空间用于动态损耗平衡。 
静态磨损均衡会对所有的存储块执行损耗平衡,包括那些没有需要数据更新的存储块,这样的好处是可以用于磨损均衡的存储块数将可能更多,减少存放静态数据(例如 mp3)存储块和存放动态数据(例如日志文件)存储块之间的不平均损耗问题,增加整个闪存的耐久度。 
磨损均衡的概念是需要尽量地将闪存的擦除平均地分布于闪存的各个闪存角落,容量愈大,同样擦除量所产生的平均放闪周期自然越少,不过如果还是出现了存储块失效的情况,就需要将该存储块标记为不可用,然后从与非闪存预留的冗余区中重新分配一块存储块到相应的逻辑地址。 
首先是关于与非闪存的存储空间的分配,用于磨损均衡中块的转移。 
在图1所示的架构中,与非闪存被分成四个存储空间,分别对应为空闲池(Free block)、有效池(Used block)、阈值池(Wear out block)和备用池(Spare block),四个子存储区域。 
关于上述四个字存储区域的使用,空闲池中的块已被擦除,块中的所有页面均为空闲状态,可写入数据。有效池中的块则是以进行了写入数据的操作,所分配的块存在有效数据。阈值池中的块则是擦写次数已达到设置的某个阈值。备用池中则分配了一些留作备用的空闲块和擦写次数快达到寿命阈值的块,其中的留作备用的空闲块对用户屏蔽,即用户不可见。 
关于寿命阈值,对应的与非闪存会有一个可擦写次数,针对该给定的可擦写次数设定一个低于该可擦写次数的阈值,记为寿命阈值,该阈值的可取范围为可擦写次数的80%~90%,一般直接取80%比较适宜,最后等均衡阈值与该寿命阈值基本一致的时候,再行调整,在余下的寿命里再进行进一步的划分。 
磨损均衡阈值,即用于磨损均衡调整的均衡阈值,其设定表现在以下方面:因为闪存每种类型物理存储单元在读写的过程中发生错误的概率不同,所以设定每种闪存类型的物理存储单元块发生码字错误率的上限分别为PS、PM和PT,脚标对应存储单元架构的首字母。 
设与非闪存的物理存储单元块实际发生码字错误率为P。当闪存的物理存储单元块码字发生错误率达到的设定上限时,存储的数据将会变得极为不可靠,闪存就不能再用了,可以直接标明为坏块,避免存储数据的丢失。 
闪存物理存储单元磨损率等于属于该存储子区域的所有块的平均值,用实际发生码字错误率/码字错误率的上限来表示。闪存物理存储单元的擦写率等于属于该存储子区域的所有物理块的平均值,用已擦除次数/可擦除次数来表示。磨损均衡阈值等于擦写率除以磨损率然后乘以磨损阈值标准再加上可擦次数与磨损率的积。对应为(擦写率/磨损率)*磨损阈值标准+可擦次数*磨损率。磨损阈值标准是根据闪存类型预设的值。 
每种闪存类型的物理存储单元块发生码字错误率的上限PS、PM和PT可以根据闪存控制芯片的纠错码的纠错位数得出。闪存的物理存储单元块实际发生码字错误率P可以根据闪存控制芯片的纠错码中译码器纠正的位数得出。 
在块的平均擦写次数达到块的可擦写次数的20%时,启动第一次磨损均衡,这样,在磨损均衡时,会产生足够的擦写次数供磨损均衡处理,在20%的条件下,可能某些块已经接近失效,当然,某些块可能还从来没有被使用过。在这个条件下,磨损均衡所使用的参量的获得有比较好的参考价值。 
那么关于均衡阈值的选择,显然对应地在相同的计算方式下要高于所说的20%,为此,当把均衡阈值表示成允许擦写次数与可擦写次数之间的关系时,存在一个因子,那么均衡阈值表示为均衡阈值的幅度为可擦写次数与当前平均擦写次数的差值与所述因子的积。那么假如,初始阶段的平均磨损为可擦写次数的20%,寿命尚存80%,这里的均衡阈值直接取80%的可擦写次数与所述因子的积,也是一种幅度。 
较佳地,所述因子为0.4~0.6,可以标准化的取0.5。也可以采用其他的方式进行取舍,对于TLC,出错的概率比较大,可以取较小值,如0.4,对于SLC,出错的概率比较小,可以取0.6。 
关于均衡阈值的调整,根据存储单元中数据出错率和各个块擦写率的平均值指来确定,随着存储单元中数据出错的概率的增加和各个块擦写率的平均值增加幅度动态的调整阈值池的阈值。 
闪存控制器取闪存物理存储单元块的擦写次数最小的方法:在启动闪存时,首先要把闪存存储的地址映射表放在主机的ROM中,闪存控制器可以根据相关擦写次数的映射表很快计算出擦写次数最小的物理存储单元块。 
使用硬件实现擦写次数最小块的获取,速度更快。 
在各池转换过程中,不仅依赖块的擦写次数,而且还依赖块中数据出错的概率来进行各池的转换,更具有代表性。 
四池的设定:根据每个块的擦写次数建立磨损均衡表和闪存控制器给每块中数据出错的概率设置阈值,并根据闪存中每个块擦写限度和已被擦写的次数进行划分各状态池。 
我们根据存储的映射表可以读出物理块的擦写、次数和块中是否存有数据来标记这四种状态。我们通过扫描闪存存储中块的擦写次数和块的状态来分池。 
依据上述内容,首先,设置阈值池的阈值,含有寿命阈值(更多的表现在备用池中)和均衡阈值,后者,也就是均衡阈值根据闪存的平均擦写次数和各池含有块的数量、发生存储错误的概率进行动态的调整。阈值池中块达到规定的阈值,我们将会进行静态磨损均衡操作,找到有效池中擦写次数最少的块,将块中的不经常进行读的冷数据转移到阈值池中擦写次数最多的块中,然后将这个块转移到有效池,同时将之前有效池中存放冷数据的擦除次数最小块进行擦除操作后将其转移到空闲池中。随着各块的擦写次数逐渐增加,阈值池的阈值也将动态的进行调整。 
当进行垃圾回收操作后,将存储被替换过的数据的垃圾块和进行回收和擦除,这时会根据块的擦除次数以及阈值池的均衡阈值将回收的垃圾开放入相应的空闲池或者是阈值池,如果块的擦除次数小于均衡阈值,则会将其放入到空闲池,否则会放入阈值池。 
空闲池是我们在进行数据写操作时才会进行使用的池,当对新的逻辑地址进行访问或者是一个新的页映射时我们会从空闲池中找出擦除次数最少的块来对其进行写操作。 
设备用池的目的主要为提高大量数据写操作时或者闪存数据快写满时的数据传输效率,同时通过与其他池的交换可以提高整个闪存的使用寿命。 
那么对数据进行写操作时,会产生对空闲池、有效池的操作,同时,当对大数据量的数据进行写操作时,还可以会使用到备用池。 
依据上述内容,采用硬件搜寻物理存储单元块的擦写次数最小值比软件搜寻的快。选取均衡阈值方式主要针对多种闪存类型混合使用,并且也支持单一的闪存类型。选取的用于磨损均衡的阈值是根据闪存物理存储单元的真正磨损程度而选择的;主要依据是闪存的控制芯片中的纠错码设定的纠错位数,如果闪存的物理存储单元块中的错误位数超过了纠错码设定的最大纠错位数,纠错码是纠不出错误的,所以此物理单元块存储数据不可信,此物理块就不可用了。 
在图1所示的框架中,箭头表示块的转移,标号1代表当数据写入时,主要是拿空闲池中的块来保存输入的数据,此块变成有效池中的块。标号2代表有效池中的冷数据可以和阈值域池中的热数据可以进行交换,标号3代表有效池中的块的擦写次数达到均衡阈值时,此块就变成阈值中的块。标号4代表当擦除有效池中的块的擦写次数未达到均衡阈值时,就把此块放入空闲池中。标号5代表阈值池中的热数据转存到空闲池中的块,如果空闲池中的块的擦写次数达到均衡阈值时,把此块放入阈值池中。标号6代表阈值池中的热数据可以转存在备用池中的块中。标号7代表当空闲池中的空块迅速减少时,可以将备用池中的空块转移到空闲池中。标号8代表空闲池中的空闲块稳定时,需要把之前有借用的一部分空闲块转移回到备用池中。标号9代表阈值池中的块擦除次数达到寿命阈值时,我们会将此块放入到备用池中。 
依据上述块的转移方式更灵活,满足对各种与非闪存的适用。更具体的内容进一步描述为: 
如,当有写入数据的请求时,根据写入数据的逻辑地址转换为物理地址来确定是否将数据写入到有效池中还是需要从空闲池中拿出新的块,如果是没有被映射过的新的逻辑地址或者是进行新的页映射,需要从空闲池中拿出擦除次数最小的块写入数据后放入有效池;当进行垃圾回收的时候,则会将有效池中的垃圾块进行擦除,根据擦除次数和均衡阈值放入到空闲池或者阈值池;当进行静态磨损均衡操作时,会将有效池中的冷数据写入到阈值池中的空块内,然后将此块转移到有效池,同时将有效池中存放冷数据的块擦除后转移到空闲池中;当阈值池中的空块的擦写次数接近寿命阈值的时候我们会将其与备用池中的空块做一个交换。

Claims (8)

1.一种四池闪存磨损均衡方法,把与非闪存的存储空间分成四个存储区域,记为第一至第四存储区域,其特征在于,在给定的可擦写次数条件下,设定一个寿命阈值,把擦写次数超过该寿命阈值的空闲块放入第四存储区域;再设定一个均衡阈值,从而其余的空闲块被进一步地依据擦写次数超过该均衡阈值的条件分入第三存储空间;而进一步留下的空闲块部分地留作备用块而放入所述第四存储区域,余者分配给第一存储区域;
已写入数据的块分配给第二存储区域;
从而,依据数据写入和擦除操作动态的调整各块在四个存储区域间的分配;同时,设定一个因子,取块的可擦写次数与该因子的积为磨损阈值标准,那么所述均衡阈值=磨损阈值标准*A/B+可擦写次数*B;其中A为擦写率,表示块的已擦写次数与可擦写次数的比值;B表示磨损率,表示块实际发生码字错误率与给定的码字错误率上限的比值;
当块的平均擦写次数达到所述均衡阈值时,调大均衡阈值;
其中,所述因子为0.4~0.6。
2.根据权利要求1所述的四池闪存磨损均衡方法,其特征在于,调整均衡阈值的幅度为可擦写次数与当前平均擦写次数的差值与所述因子的积。
3.根据权利要求1或2所述的四池闪存磨损均衡方法,其特征在于,当有数据写入时,写入被分配的所述第一存储区域的块,并将写有数据的块放入第二存储区域;
而当第二存储区域的数据块达到所述均衡阈值时,分配一个没有达到所述均衡阈值的空闲块存放搬移过来的所述数据块内的数据,并被放入第二存储区域,对应地,数据块的数据被搬移后放入第三存储区域;
第二存储区域的数据块被擦除而其擦写次数没有达到所述均衡阈值时,形成的空闲块放入第一存储区域;
第一存储区域的块被连续写入时,将第四存储区域中的备用块转移给第一存储区域,并在存储数据完成且被转移的备用块没有使用完毕时,把剩余的备用块重新放入第四存储区域;
当第三存储区域内的块的擦写次数达到寿命阈值时,将此块放入第四存储区域。
4.根据权利要求3所述的四池闪存磨损均衡方法,其特征在于,与非闪存数据整理时,含有第二存储区域的存放的冷数据与第三存储区域的热数据进行交换的第一方案;和
在第一存储区域或第四存储区域大于第二存储区域时,在容量较大的存储区域中查找擦写次数最少的块存放第三存储区域的热数据,然后将该块转移到第二存储区域的第二方案。
5.根据权利要求1所述的四池闪存磨损均衡方法,其特征在于,块的已擦写次数由与非闪存控制器提供,具体是在与非闪存应用软件的逻辑转换层在初始化时加载地址映射表到主机ROM,提取块的物理地址和块所存放的数据的类型,以及块的已擦写次数;依据读取的已擦写次数进行排序,以备调用。
6.根据权利要求1所述的四池闪存磨损均衡方法,其特征在于,所述实际发生的码字错误率的获得方法是读取闪存控制器纠错码中译码器纠正的位数得出,磨损率表示所读取的位数与设定的最大位数的比。
7.根据权利要求6所述的四池闪存磨损均衡方法,其特征在于,所述位数不能大于设定的纠错码最大位数,若某块的纠错码位数超过了最大纠错码位数,则标定该块为坏块。
8.根据权利要求1所述的四池闪存磨损均衡方法,其特征在于,在块的平均擦写次数达到块的可擦写次数的20%时,启动第一次磨损均衡。
CN201210237998.8A 2012-07-11 2012-07-11 四池闪存磨损均衡方法 Active CN102789423B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210237998.8A CN102789423B (zh) 2012-07-11 2012-07-11 四池闪存磨损均衡方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210237998.8A CN102789423B (zh) 2012-07-11 2012-07-11 四池闪存磨损均衡方法

Publications (2)

Publication Number Publication Date
CN102789423A CN102789423A (zh) 2012-11-21
CN102789423B true CN102789423B (zh) 2014-12-10

Family

ID=47154828

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210237998.8A Active CN102789423B (zh) 2012-07-11 2012-07-11 四池闪存磨损均衡方法

Country Status (1)

Country Link
CN (1) CN102789423B (zh)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9754648B2 (en) 2012-10-26 2017-09-05 Micron Technology, Inc. Apparatuses and methods for memory operations having variable latencies
US9734097B2 (en) 2013-03-15 2017-08-15 Micron Technology, Inc. Apparatuses and methods for variable latency memory operations
CN103218306B (zh) * 2013-03-29 2016-03-30 四川长虹电器股份有限公司 一种实现基于ubi的动态磨损均衡的方法
CN104298465B (zh) * 2013-07-17 2017-06-20 光宝电子(广州)有限公司 固态储存装置中的区块分组方法
CN104572489B (zh) * 2013-10-23 2019-12-24 深圳市腾讯计算机系统有限公司 磨损均衡方法及装置
CN104866429B (zh) * 2014-02-26 2018-02-02 群联电子股份有限公司 存储器管理方法、存储器控制电路单元与存储器存储装置
US10365835B2 (en) 2014-05-28 2019-07-30 Micron Technology, Inc. Apparatuses and methods for performing write count threshold wear leveling operations
CN105489246B (zh) * 2014-09-16 2018-10-19 华邦电子股份有限公司 Nor闪存及其修补方法
CN104376875B (zh) * 2014-11-19 2017-09-05 华为数字技术(苏州)有限公司 存储设备寿命预测、确定方法及装置
CN104899152A (zh) * 2015-06-05 2015-09-09 宁波三星智能电气有限公司 存储器存储方法
CN106294202A (zh) * 2015-06-12 2017-01-04 联想(北京)有限公司 一种数据存储方法和装置
CN105183386A (zh) * 2015-09-14 2015-12-23 联想(北京)有限公司 一种信息处理方法及电子设备
CN105260320B (zh) * 2015-10-12 2020-06-16 珠海格力电器股份有限公司 用于flash存储器的数据处理方法和装置
KR102435873B1 (ko) * 2015-12-18 2022-08-25 삼성전자주식회사 스토리지 장치 및 그것의 리드 리클레임 방법
KR20170075835A (ko) * 2015-12-23 2017-07-04 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
CN108153481B (zh) * 2016-12-05 2021-08-03 北京兆易创新科技股份有限公司 一种nand的存储块回收方法和装置
US11188456B2 (en) * 2017-03-21 2021-11-30 Western Digital Technologies Inc. Storage system and method for predictive block allocation for efficient garbage collection
US10289330B2 (en) * 2017-03-30 2019-05-14 Western Digital Technologies, Inc. Allocating shared memory among multiple tasks in a multiprocessor environment
CN108052287A (zh) * 2017-12-12 2018-05-18 深圳市创维软件有限公司 一种非易失性存储器的分区数据管理方法、机顶盒及介质
CN108255425A (zh) * 2017-12-29 2018-07-06 北京联想核芯科技有限公司 一种ssd硬盘的数据处理方法和装置
CN108132891A (zh) * 2017-12-29 2018-06-08 北京联想核芯科技有限公司 一种ssd硬盘的数据处理方法和装置
US10585795B2 (en) * 2018-05-31 2020-03-10 Micron Technology, Inc. Data relocation in memory having two portions of data
CN111104045B (zh) * 2018-10-25 2024-10-01 深圳市中兴微电子技术有限公司 一种存储控制方法、装置、设备和计算机存储介质
CN110109625A (zh) * 2019-05-16 2019-08-09 深圳市时创意电子有限公司 一种改善Free Queue的管理方法
CN110888596B (zh) * 2019-06-25 2021-07-09 北京华弘集成电路设计有限责任公司 一种Flash存储区域的文件擦写方法及装置
CN110750466A (zh) * 2019-10-18 2020-02-04 深圳豪杰创新电子有限公司 提高闪存擦写寿命的方法和装置
CN111159058B (zh) * 2019-12-27 2022-03-04 深圳大普微电子科技有限公司 一种磨损均衡方法、装置及非易失性的存储设备
CN111966287B (zh) * 2020-08-07 2024-01-19 深圳移航通信技术有限公司 数据存储方法、电子设备及存储介质
CN112162934A (zh) * 2020-09-29 2021-01-01 深圳市时创意电子有限公司 存储块异常磨损处理方法、装置、电子设备及存储介质
CN114442936B (zh) * 2021-12-29 2024-03-08 山东云海国创云计算装备产业创新中心有限公司 一种闪存转换层的块管理方法、装置、设备及存储介质
CN118069068B (zh) * 2024-04-16 2024-07-02 苏州元脑智能科技有限公司 固态硬盘的管理方法、装置、电子设备以及存储介质
CN118538275B (zh) * 2024-07-15 2024-10-11 广东长兴半导体科技有限公司 一种闪存存储器的动态磨损均衡方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101266573A (zh) * 2008-04-29 2008-09-17 中国船舶重工集团公司第七〇九研究所 允许覆盖的闪存均匀磨损循环队列技术
CN101819821A (zh) * 2010-03-25 2010-09-01 清华大学深圳研究生院 一种固态硬盘动态损耗均衡方法
CN102081576A (zh) * 2011-03-01 2011-06-01 华中科技大学 一种闪存的磨损平衡方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120023144A1 (en) * 2010-07-21 2012-01-26 Seagate Technology Llc Managing Wear in Flash Memory

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101266573A (zh) * 2008-04-29 2008-09-17 中国船舶重工集团公司第七〇九研究所 允许覆盖的闪存均匀磨损循环队列技术
CN101819821A (zh) * 2010-03-25 2010-09-01 清华大学深圳研究生院 一种固态硬盘动态损耗均衡方法
CN102081576A (zh) * 2011-03-01 2011-06-01 华中科技大学 一种闪存的磨损平衡方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
《A group-based wear-leveling algorithm for large-capacity flash memory storage systems》;Dawoon Jung, et al;《Proceedings of the 2007 international conference on Compilers, architecture, and synthesis for embedded systems》;20071231;全文 *
《闪存损耗均衡的内存优化实现》;柳振中;《系统仿真学报》;20091031;第21卷;全文 *
DawoonJung et al.《A group-based wear-leveling algorithm for large-capacity flash memory storage systems》.《Proceedings of the 2007 international conference on Compilers *
柳振中.《闪存损耗均衡的内存优化实现》.《系统仿真学报》.2009,第21卷全文. *

Also Published As

Publication number Publication date
CN102789423A (zh) 2012-11-21

Similar Documents

Publication Publication Date Title
CN102789423B (zh) 四池闪存磨损均衡方法
CN106547703B (zh) 一种基于块组结构的ftl优化方法
CN102081576B (zh) 一种闪存的磨损平衡方法
CN109196459B (zh) 一种去中心化的分布式异构存储系统数据分布方法
CN103608782B (zh) Lsb页面和msb页面中的选择性数据存储
CN103688247B (zh) 混合slc/mlc存储器中的块管理方案
CN100419714C (zh) 闪存存取方法、闪存文件系统的块替换方法及其管理装置
CN100435116C (zh) 具有存储器平面对准的非易失性存储器及方法
CN104903842B (zh) 用于在非易失性存储器中的异步裸芯操作的方法和系统
TWI399644B (zh) 非揮發記憶體區塊管理方法
CN105808156A (zh) 将数据写入固态硬盘的方法及固态硬盘
US20110010489A1 (en) Logical block management method for a flash memory and control circuit storage system using the same
KR20140043329A (ko) 셀 저장 용량당 서로 다른 비트를 갖는 세 개의 메모리 층을 구비한 메모리 시스템
US20100057979A1 (en) Data transmission method for flash memory and flash memory storage system and controller using the same
CN101634967B (zh) 用于闪存的区块管理方法、储存系统与控制器
CN109426622B (zh) 一种提高闪存固态盘寿命的方法及高寿命闪存固态盘
US20110302359A1 (en) Method for managing flash memories having mixed memory types
CN101908368A (zh) 电子存储装置及其操作方法
CN101777026A (zh) 一种存储管理方法、硬盘及存储系统
CN101625897B (zh) 用于快闪存储器的数据写入方法、储存系统与控制器
CN101382918A (zh) 一种基于数据交换区的NAND Flash闪存优化管理方法
CN101641679A (zh) 用于系统管理的多级单元选择的多程序
CN102135942A (zh) 一种存储设备中实现损耗均衡的方法及存储设备
CN103713857B (zh) 存储数据的方法及存储装置
CN101169760A (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
C14 Grant of patent or utility model
GR01 Patent grant