CN102157202B - 防止非易失性存储器发生读取干扰的方法及其控制器 - Google Patents

防止非易失性存储器发生读取干扰的方法及其控制器 Download PDF

Info

Publication number
CN102157202B
CN102157202B CN201110118081.1A CN201110118081A CN102157202B CN 102157202 B CN102157202 B CN 102157202B CN 201110118081 A CN201110118081 A CN 201110118081A CN 102157202 B CN102157202 B CN 102157202B
Authority
CN
China
Prior art keywords
block
read
nonvolatile memory
count value
storage device
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
CN201110118081.1A
Other languages
English (en)
Other versions
CN102157202A (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.)
Phison Electronics Corp
Original Assignee
Phison Electronics Corp
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 Phison Electronics Corp filed Critical Phison Electronics Corp
Priority to CN201110118081.1A priority Critical patent/CN102157202B/zh
Publication of CN102157202A publication Critical patent/CN102157202A/zh
Application granted granted Critical
Publication of CN102157202B publication Critical patent/CN102157202B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

本发明提供一种防止非易失性存储器发生读取干扰的方法,适用于一非易失性存储器储存装置,其中易失性存储器具有多数个区块,且每一个区块具有多数个分页。本发明所提出的防止非易失性存储器发生读取干扰的方法包括:将非易失性存储器储存装置的控制器所执行用以控制非易失性存储器储存装置的程序码储存于该些区块中的至少一第一区块;以及当供电至非易失性存储器储存装置时,将第一区块内所储存的程序码复制至该些区块中的至少一第二区块。由此,被复制存有程序码的区块就会替代原存有程序码的区块,而此用意乃是为了要顾全原存有程序码的区块不会受到读取干扰的影响,所以程序码发生错误、异常或遗失的现象就会大大地降低。

Description

防止非易失性存储器发生读取干扰的方法及其控制器
本申请是2008年1月22日提交的申请号为200810005154.4,发明名称为“防止非易失性存储器发生读取干扰的方法及其控制器”发明专利申请的
分案申请
技术领域
本发明是有关于一种储存媒体的读取技术,且特别是有关于一种防止非易失性存储器发生读取干扰的方法及其控制器。
背景技术
近年来,由于数码相机、具有照相功能的手机、MP3,以及MP4的成长十分迅速,所以使得消费者对储存媒体的需求也急剧增加。综观现今所有的储存媒体而言,由于快闪存储器(Flash Memory)具有资料非易失性、省电、体积小,以及无机械结构等特性,所以最适合内建于上述所举例的多种可携式多媒体装置中。再者,由于小型记忆卡与随身碟等外接式产品对于现代人而言的需求也很大,所以各家快闪存储器的制造厂商无不朝向让快闪存储器的容量变得更大及使用稳定度提升的研发方向而努力琢磨着。
一般而言,快闪存储器的种类大致可以按照制程的精密程度而分成两种。而众所皆知的是,由较低精密程度的制程所制作出来的是单层存储单元(SingleLevel Cell,SLC)快闪存储器,而由较高精密程度的制程所制作出来的是多层存储单元(Multi Level Cell,MLC)快闪存储器。其中,多层存储单元快闪存储器的记忆容量会高于单层存储单元快闪存储器的存储容量,但是多层存储单元快闪存储器的使用稳定度却会比单层存储单元快闪存储器的使用稳定度来得低。
然而,无论是对多层存储单元快闪存储器或是单层存储单元快闪存储器内的同一个区块所储存的资料进行多次读取时,例如十万至百万次间的读取次数,很有可能会发生所读取的资料是错误的,甚至此被多次读取区块内所储存的资料会发生异常或遗失。而此类现象以本发明领域具有通常知识者惯称为“读取干扰”(read-disturb)。也因有着这样的现象存在着,无不驱使着各家厂商必须发展出防止读取干扰的技术,以来有效地抑制读取干扰发生的机率。
发明内容
有鉴于此,本发明的目的就是提供一种防止非易失性存储器发生读取干扰的方法及其控制器,其可有效地抑制读取干扰发生的机率,以正确地读取非易失性存储器内所储存的所有资料。
基于上述及其所欲达成的目的,本发明提出一种防止非易失性存储器发生读取干扰的方法,适用于一非易失性存储器储存装置,其中易失性存储器具有多数个区块,且每一个区块具有多数个分页。本发明所提出的防止非易失性存储器发生读取干扰的方法包括:将非易失性存储器储存装置的控制器所执行用以控制非易失性存储器储存装置的程序码储存于该些区块中的至少一第一区块;以及当供电至非易失性存储器储存装置时,将第一区块内所储存的程序码复制至该些区块中的至少一第二区块。
在本发明的一选择实施例中,本发明所提出的防止非易失性存储器发生读取干扰的方法还包括以下步骤:纪录第二区块被读取的次数,并且当第二区块的读取次数大于一个预设值时,更新第二区块内所储存的程序码。
于本发明一选择实施例中,纪录第二区块被读取的次数的步骤包括:利用一读取次数表纪录第二区块被读取的次数,其中所述读取次数表具有对应第二区块的一第一计数值,且此第一计数值用以表示为第二区块被读取的次数。
于本发明一选择实施例中,更新第二区块内所储存的程序码的步骤包括:首先,将第二区块内所储存的程序码复制至该些区块中的至少一第三区块,其中所述读取次数表还具有对应第三区块的一第二计数值,且此第二计数值用以表示为第三区块被读取的次数。接着,以第三区块替代第二区块,并且更新所述第一计数值。
于本发明一选择实施例中,更新第二区块内所储存的程序码的步骤更包括:首先,将相邻于第二区块的至少一第四区块内原先所储存的资料复制至该些区块中的一第五区块,其中所述读取次数表更具有对应第四区块及第五区块的一第三计数值与一第四计数值,且此第三计数值及第四计数值用以各别表示为第四区块及第五区块被读取的次数。接着,以第五区块替代第四区块,并且更新所述第三计数值。
于本发明一选择实施例中,非易失性存储器为单层存储单元快闪存储器或多层存储单元快闪存储器。
再从另一观点来看,本发明提供一种控制器,其适用于一非易失性存储器储存装置,该控制器包括微处理单元、非易失性存储器接口、缓冲存储器,以及存储器管理模组。其中,微处理单元用以控制所述控制器的整体运作。非易失性存储器接口会电性连接至微处理单元,并且用以存取非易失性存储器储存装置的非易失性存储器,其中非易失性存储器具有多数个区块。缓冲存储器会电性连接至微处理单元,并且用以暂时地储存资料。
存储器管理模组会电性连接至微处理单元,并且用以管理非易失性存储器,其中存储器管理模组会将控制器所执行用以控制非易失性存储器储存装置的程序码储存于该些区块中的至少一第一区块,且当供电至非易失性存储器储存装置时,存储器管理模组会将第一区块内所储存的程序码复制至该些区块中的至少一第二区块。
于本发明一选择实施例中,存储器管理模组会纪录第二区块被读取的次数,并且当第二区块的读取次数大于一个预设值时,存储器管理模组会更新第二区块内所储存的程序码。
于本发明一选择实施例中,存储器管理模组利用一读取次数表纪录第二区块被读取的次数,其中所述读取次数表具有对应该第二区块的一第一计数值,且此第一计数值用以表示为第二区块被读取的次数。
于本发明一选择实施例中,存储器管理模组更新第二区块内所储存的程序码的方式可以包括:将第二区块内所储存的程序码重新写回第二区块,并且更新所述第一计数值;或者,将第二区块内所储存的程序码复制至该些区块中的至少一第三区块,并以第三区块替代第二区块,且更新所述第一计数值。其中,所述读取次数表更具有对应第三区块的一第二计数值,且此第二计数值用以表示为第三区块被读取的次数。
于本发明一选择实施例中,存储器管理模组更新第二区块内所储存的程序码的方式更可以包括:将相邻于第二区块的至少一第四区块内原先所储存的资料同时更新。其中,所述读取次数表更具有对应第四区块的一第三计数值,且此第三计数值用以表示为第四区块被读取的次数。
为了要防止读取干扰的产生,本发明所提出的防止非易失性存储器发生读取干扰的方法主要是利用读取次数表来记录非易失性存储器内至少一/每一区块或分页被读取的次数。由此,当非易失性存储器内某一个区块或分页被读取的次数大于预设值时,将此区块或将此分页所隶属的区块所储存的资料更新。因此,本发明所提出的防止非易失性存储器发生读取干扰的方法,不但可以有效地抑制读取干扰发生的机率,且可以正确地读取非易失性存储器内所储存的所有资料。另外,当主机供电至非易失性存储器储存装置时,存有程序码的区块会被控制器复制至另一区块中。由此,被复制存有程序码的区块就会替代原存有程序码的区块,而此用意乃是为了要顾全原存有程序码的区块不会受到读取干扰的影响,所以程序码发生错误、异常或遗失的现象就会大大地降低。
附图说明
为让本发明的上述目的、特征和优点能更明显易懂,以下结合附图对本发明的具体实施方式作详细说明,其中:
图1绘示为非易失性存储器储存装置的简易系统方块图。
图2绘示为本发明一实施例的防止非易失性存储器发生读取干扰的方法流程图。
图3绘示为本发明另一实施例的防止非易失性存储器发生读取干扰的方法流程图。
图4绘示为本发明的防止非易失性存储器发生读取干扰的方法可应用的装置的示意图。
主要元件符号说明:
100:非易失性存储器储存装置
101:控制器
101a:存储器管理模组
101b:非易失性存储器接口
101c:缓冲存储器
101d:微处理单元
101e:主机传输接口
101f:错误校正模组
101g:电源管理模组
101h:程序存储器
103:非易失性存储器
B0~Bn:区块
P0~Pm:分页
D:资料存储区
R:资料冗余区
402:USB快闪碟
404:数码相机(摄影机)
404a:SD卡
404b:MMC卡
404c:CF卡
404d:记忆棒(memory stick)
406:固态硬盘
S201、S203:本发明一实施例的防止非易失性存储器发生读取干扰的方法各步骤
S301、S303:本发明另一实施例的防止非易失性存储器发生读取干扰的方法各步骤
具体实施方式
本发明所欲达成的技术功效是为有效地抑制读取干扰发生的机率,以达到正确地读取非易失性存储器内所储存的所有资料。而以下的内容将针对本案的技术特征与所欲达成的技术功效做一详加描述,以提供给本发明相关领域的技术人员参考。
图1绘示为非易失性存储器储存装置100的系统方块图。请参照图1,非易失性存储器储存装置100一般包括控制器101与非易失性存储器103。其中,控制器101用以控制非易失性存储器储存装置100的整体运作,例如资料的储存、读取与抹除等。于本实施例中,控制器101包括存储器管理模组101a、非易失性存储器接口101b、缓冲存储器101c与微处理单元101d。其中,存储器管理模组101a用以管理非易失性存储器103,例如执行本发明所提出的防止非易失性存储器发生读取干扰(read-disturb)的方法、损坏区块管理、维护映射表(mapping table)等。
非易失性存储器接口101b用以存取非易失性存储器103,也就是外部主机(未绘示,例如可以是电脑、数码相机、摄影机、通信装置、音频播放器或视频播放器等可储存资料的任意系统)欲写入至非易失性存储器103的资料会经由非易失性存储器接口101b转换为非易失性存储器103所能接受的资料格式。
缓冲存储器101c用以暂时地储存系统资料(例如映射表)或者主机所欲读取或写入的资料。在本实施例中,缓冲存储器101c为静态随机存取存储器(static random access memory,SRAM)。然而,必须了解的是,本发明并不限于此,动态随机存取存储器(DRAM)、磁阻式存储器(MRAM)、相变化存储器(PRAM)或其他适合的存储器也可应用于本发明。微处理单元101d用以控制控制器101的整体运作。
于本实施例中,控制器101还包括主机传输接口101e、错误校正模组101f、电源管理模组101g,以及程序存储器101h。其中,主机传输接口101e用以与主机通讯。于此,主机传输接口101c可以是USB接口、IEEE 1394接口、SATA接口、PCI Express接口、SAS接口、MS接口、MMC接口、SD接口、CF接口或IDE接口。
错误校正模组101f用以计算错误更正码(error correcting code),以来检查与校正主机所读取或写入的资料。电源管理模组101g用以管理非易失性存储器储存装置100的电源。程序存储器101h用以储存控制器101所执行用以控制非易失性存储器储存装置100的程序码。
非易失性存储器103用以储存资料。于本实施例中,非易失性存储器103为快闪存储器,且此快闪存储器可以为单层存储单元(SLC)快闪存储器或多层存储单元(MLC)快闪存储器。
众所皆知的是,非易失性存储器通常实质上分割为多个实体区块(physicalblock),且每一个实体区块通常会分割为多数个分页(page)。于本实施例中,非易失性存储器103具有多数个区块B0~Bn(排列方式并不限制如图1所绘示般),且每一个区块B0~Bn皆会如区块B0般具有多数个分页P0~Pm(排列方式并不限制如图1所绘示般)。
一般而言,每一个分页通常包括有资料存储区D与资料冗余区R。其中,资料存储区D用以储存使用者的资料,而资料冗余区R则用以储存系统的资料,例如上述的错误更正码(error correcting code,ECC)。
为了有效率地管理非易失性存储器103,一般会将非易失性存储器103的区块B0~Bn在逻辑上规划成系统群组、资料群组与备用群组。一般来说,非易失性存储器103中属于资料群组的区块会占据所有区块B0~Bn的90%以上,而剩下的区块才属于系统群组与备用群组。其中,系统群组中的区块主要是用以记录系统资料,例如是关于非易失性存储器103的区域数、每一区域的区块数、每一区块的分页数、逻辑实体映射表...等。
资料群组中的区块主要是用以储存使用者的资料。备用群组中的区块主要是用以替换资料群组中的区块。因此,备用群组中的区块为空的区块,亦即无记录资料或标记为已没用的无效资料。
再者,为了要有效地抑制对非易失性存储器103进行多次读取时所发生的读取干扰,以下将针对本发明所提出的防止非易失性存储器发生读取干扰的方法进行详细的说明,以让本发明相关领域的技术人员参考。
图2绘示为本发明一实施例的防止非易失性存储器发生读取干扰的方法流程图。请合并参照图1及图2,本实施例的防止非易失性存储器发生读取干扰的方法包括下列步骤:首先,如步骤S201所述,纪录隶属于资料群组的所有区块中至少一第一区块被读取的次数。
于本实施例中,纪录资料群组中每一个区块被读取的次数主要是利用一读取次数表来记录的,其中此读取次数表可以储存在缓冲存储器101c,但并不限制于此。另外,控制器101会控制管理其内部的一计数器(未绘示)去计数资料群组中每一区块被读取的次数,并且将资料群组中每一区块被读取的次数纪录于读取次数表中。因此,读取次数表中就会具有多数个对应资料群组中每一个区块的一计数值,而这些计数值则分别表示为资料群组中每一个区块被读取的次数。举例来说,当读取次数表中用以纪录资料群组中区块B0被读取的次数的计数值为100时,即表示区块B0内所储存的资料已被读取了100次。
基此,本实施例即利用上述读取次数表纪录第一区块被读取的次数,且此读取次数表具有对应此第一区块的第一计数值,其中该第一计数值则用以表示为第一区块被读取的次数。
于此值得一提的是,在非易失性存储器储存装置100的运作期间,每当读取资料群组中的任一区块时,缓冲存储器105内的读取次数表所纪录的内容就会持续地被控制器101所更新,并且例如在非易失性存储器储存装置100结束运作或者每动作一定次数后,读取次数表中所纪录的内容就会被控制器101纪录至系统群组的至少一区块中,或者会被相对应的纪录于被读取的区块的资料冗余区R中,而此备份动作是为了要避免因非易失性存储器储存装置100发生不正常断电所造成已更新的读取次数表所纪录的内容遗失。
故依据上述可知,上述读取次数表可以储存在非易失性存储器103的外部(亦即储存在控制器101内部的缓冲存储器105中),且亦可以储存在非易失性存储器103的内部(亦即储存在系统群组的至少一区块中或储存于被读取的区块的资料冗余区R中),甚至更可以独身自立于控制器101的系统当中。此外,上述被控制器101所控制管理的计数器的计数方式可以设计成上数或下数。
接着,如步骤S203所述,当资料群组中的第一区块的读取次数大于预设值时,更新第一区块内原先所储存的资料。于本实施例中,假设资料群组中的第一区块(例如区块B0)的读取次数大于预设值(即有可能发生读取干扰的读取次数,例如百万次,但不限制于此)时,此时控制器101会将第一区块B0内原先所储存的资料复制至备用群组中的一第二区块(例如区块Bn-1),而此过程也就是步骤S203所述及的更新第一区块内原先所储存的资料;反之,当资料群组中的第一区块B0的读取次数未大于预设值时,第一区块B0内原先所储存的资料并不会被更新。
于本实施例中,上述读取次数表还具有对应此第二区块Bn-1的第二计数值,且此第二计数值则用以表示为第二区块Bn-1被读取的次数。
紧接着,控制器101会再去修正逻辑实体映射表的对应关系,以将第二区块Bn-1替代第一区块B0,并且更新读取次数表用以纪录第一区块B0被读取的次数的第一计数值,例如将纪录第一区块B0被读取的次数的第一计数值重新归0(亦即从百万次的计数值归0)。在此值得一提的是,过于频繁地执行资料更新会影响整个非易失性存储器储存装置100的效能,而若太长时间不执行资料更新的话,则会增加资料读取错误的风险,故上述预设值的设定可以通过多次实验的结果而定义出一个合理值,例如10万次至1000万次依不同的设计需求来设定不同的数值。
故依据上述可知,当第一区块B0的读取次数大于百万次的同时,控制器101会致使第一区块B0内原先所储存的资料复制至备用群组中的第二区块Bn-1,并且修正逻辑实体映射表的对应关系,以将第二区块Bn-1替代第一区块B0,所以本实施例的防止非易失性存储器发生读取干扰的方法即可有效地抑制对非易失性存储器103于一特定的区块进行多次读取时所发生的读取干扰。
然而,更得一提的是,由于制程因素的影响,当第一区块B0的读取次数越来越多的同时,有可能会间接影响到相邻于第一区块B0的一第三区块(例如区块B1)内原先所储存的资料。因此,当第一区块B0的读取次数大于百万次的同时,控制器101除了会致使第一区块B0内原先所储存的资料复制至备用群组中的第二区块Bn-1外,还会致使第三区块B1内原先所储存的资料复制至备用群组中的一第四区块(例如区块Bn)。
于本实施例中,上述读取次数表还具有对应第三区块B1及第四区块Bn的一第三计数值与一第四计数值,且此第三及第四计数值用以各别表示为第三区块B1及第四区块Bn被读取的次数。紧接着,控制器101会再去修正逻辑实体映射表的对应关系,以将第四区块Bn替代第三区块B1,并且更新读取次数表用以纪录第三区块B1被读取的次数的第三计数值。
故基于上述可知,当资料群组中的某一区块的读取次数达到设定的预设值时,本实施例的防止非易失性存储器发生读取干扰的方法除了会更新读取次数大于预设值的区块所储存的资料外,还更会同时将与读取次数大于预设值的区块相邻的区块(例如左右/上下相邻的区块)所储存的资料也一并更新。因此,本实施例的防止非易失性存储器发生读取干扰的方法即可达到正确地读取非易失性存储器103内所储存的所有资料。
再者,依据本发明的精神并不限制于上述实施例的实施方式。在本发明另一实施例中,假设资料群组中的第一区块(例如区块B0)的读取次数大于预设值(即有可能发生读取干扰的读取次数,例如百万次,但不限制于此)时,此时控制器101会先将第一区块B0内原先所储存的资料读出,并暂存于缓冲存储器101c内。
接着,控制器101会抹除第一区块B0内所储存的所有资料。之后,控制器101会将缓冲存储器101c内暂存第一区块B0内原先所储存的资料写回至第一区块B0,并且更新读取次数表用以纪录第一区块B0被读取的次数的第一计数值,而此过程同样也就是步骤S203所述及的更新第一区块内原先所储存的资料。然而,于本实施例中,控制器101并不需要去修正逻辑实体映射表的对应关系。
上述所谓的资料更新指的是将区块内原先所储存的资料重新写入的动作(亦即抹除后再写入),其可以写入于不同的区块或原来的区块。因此,只要是区块内原先所储存的资料被重新写入,该区块发生读取干扰的可能性即会大大地减少,且当区块内原先所储存的资料被重新写入时,读取次数表用以记录区块被读取的计数值也会随即被重置(例如归0)。
相似地,由于制程因素的影响,当第一区块B0的读取次数越来越多的同时,有可能会间接影响到相邻于第一区块B0的至少一第二区块(例如区块B1)内原先所储存的资料。因此,当第一区块B0的读取次数大于百万次的同时,控制器101除了会将第一区块B0内原先所储存的资料读出并暂存于缓冲存储器101c外,更会将第二区块B1内原先所储存的资料同样读出并暂存于缓冲存储器101c内。
接着,控制器101也会抹除第二区块B1内所储存的所有资料,并将缓冲存储器101c内暂存第二区块B1内原先所储存的资料写回至第二区块B1,且更新读取次数表用以纪录第二区块B1被读取的次数的第二计数值。由此,本实施例的防止非易失性存储器发生读取干扰的方法亦可达到正确地读取非易失性存储器103内所储存的所有资料。
据此,值得一提的是,上述实施例用以纪录资料群组中每一个区块被读取的次数的单位为整个区块,但是依据本发明的精神并不限制于此。在本发明的再一实施例中,纪录资料群组中每一个区块被读取的次数同样还是利用读取次数表来记录的,但是控制器101却会控制管理计数器去计数资料群组中每一个区块内的每一个分页被读取的次数,只要是任一区块内的任一分页被读取时,此被读取分页所隶属的区块就会被视为已读取一次。
举例来说,当第一区块(例如区块B0)内的第一分页(例如分页P0)所储存的资料被读取时,读取次数表用以纪录第一区块B0被读取的次数的第一计数值就会累加一次或递减一次;而当第二区块(例如区块B1)内的第二分页(例如分页P1)所储存的资料被读取时,读取次数表用以纪录第二区块B1被读取的次数的第一计数值就会累加一次或递减一次。
相似地,当第三区块(例如区块B2)内的第三分页(例如分页P2)所储存的资料被读取时,读取次数表用以纪录第三区块B2被读取的次数的第三计数值就会累加一次或递减一次;而当第四区块(例如区块B3)内的第四分页(例如分页P3)所储存的资料被读取时,读取次数表用以纪录第四区块B3被读取的次数的第四计数值就会累加一次或递减一次,依此类推之。
当然,为了实现此实施方式,读取次数表内就必须具有多数个对应资料群组中每一个区块内的每一个分页的计数值,且这些计数值分别表示为资料群组中每一个区块内的每一个分页被读取的次数。另外,于本实施例中,更新任一区块内原先所储存的资料的流程大致与上述实施例所揭露的内容类似,故在此并不再加以赘述。
从另一观点来说,控制器101所执行用以控制非易失性存储器储存装置100的程序码一般会储存在程序存储器101h内。然而,于本发明的一选择实施例中,控制器101所执行用以控制非易失性存储器储存装置100的程序码会被储存在非易失性存储器103中的至少一区块。故可想而知的是,此区块所储存的程序码在非易失性存储器储存装置100的运作期间必然会很频繁地被读取。因此,对此区块所储存的程序码进行多次得读取后,也有可能会发生读取干扰。为此,本发明提供另一种防止非易失性存储器发生读取干扰的方法,以提供给本发明领域的技术人员参考。
图3绘示为本发明另一实施例的防止非易失性存储器发生读取干扰的方法流程图。请合并参照图1及图3,本实施例的防止非易失性存储器发生读取干扰的方法适用于非易失性存储器储存装置100,其中非易失性存储器103具有多数个区块,且每一个区块具有多数个分页,该方法同样由存储器管理模组101a来执行,且其包括下列步骤:首先,如步骤S301所述,将非易失性存储器储存装置100的控制器101所执行用以控制非易失性存储器储存装置100的程序码储存于非易失性存储器103内所有区块中的至少一第一区块。接着,如步骤S303所述,当供电至非易失性存储器储存装置100时,将第一区块内所储存的程序码复制至非易失性存储器103内所有区块中的至少一第二区块。
于本实施例中,当第一区块内所储存的程序码复制至非易失性存储器103内所有区块中的至少一第二区块之后,存储器管理模组101a更会纪录第二区块被读取的次数,并且当第二区块的读取次数大于一个预设值时,更新第二区块内所储存的程序码。
故基于上述可知,由于控制器101所执行用以控制非易失性存储器储存装置100的程序码已被储存在非易失性存储器103中的至少一区块,所以控制器101内的程序存储器101h即可省略,以节省控制器101的成本。另外,当主机供电至非易失性存储器储存装置100时,存有程序码的区块会被控制器101复制至另一区块中。由此,被复制存有程序码的区块就会替代原存有程序码的区块,而此用意乃是为了要顾全原存有程序码的区块不会受到读取干扰的影响,所以程序码发生错误、异常或遗失的现象就会大大地降低。
此外,由于被复制存有程序码的区块在非易失性存储器储存装置100的运作期间还是会很频繁地被读取,所以依据本发明的精神,当被复制存有程序码的区块的读取次数大于一个预设值(即有可能发生读取干扰的读取次数,例如百万次,但不限制于此时),被复制存有程序码的区块的资料更新方式会与上述实施例类似,于此并不再加以赘述。
有鉴于此,本发明所提出的防止非易失性存储器发生读取干扰的方法不但可以确保读取非挥性存储器103内所储存的所有资料的正确性外,也可确保当控制器101所执行用以控制非易失性存储器储存装置100的程序码存在非挥性存储器103的完整性。
因此,本发明所提出的防止非易失性存储器发生读取干扰的方法可适用于各种以非易失性存储器作为储存媒体的装置。例如图4所绘示的USB快闪碟402、数码相机(摄影机)404所使用的SD卡404a、MMC卡404b、CF卡404c与记忆棒(memory stick)404d,以及固态硬盘406等。当中尤以固态硬盘406更需要好的防止非易失性存储器发生读取干扰的方法,来抑制读取干扰发生的机率。
综上所述,本发明所提供的防止非易失性存储器发生读取干扰的方法主要是利用计数器及读取次数表来各别计数及记录非易失性存储器内每一个区块或分页被读取的次数。由此,当非易失性存储器内某一个区块或分页被读取的次数大于预设值时,将此区块或将此分页所隶属的区块所储存的资料更新。因此,本发明所提出的防止非易失性存储器发生读取干扰的方法,不但可以有效地抑制读取干扰发生的机率,且可以正确地读取非易失性存储器内所储存的所有资料。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。

Claims (10)

1.一种防止非易失性存储器发生读取干扰的方法,适用于一非易失性存储器储存装置,其中该非易失性存储器具有多数个区块,且每一个区块具有多数个分页,其特征在于,该方法包括:
将一程序码储存于该些区块中的至少一第一区块;
当供电至该非易失性存储器储存装置时,将该第一区块内所储存的该程序码复制至该些区块中的至少一第二区块;以及
从该第二区块中读取该程序码,其中该程序码是由该非易失性存储器储存装置的一控制器所执行以控制该非易失性存储器储存装置并且当该非易失性存储器储存装置运作时,该第二区块中的该程序码会被该控制器读取。
2.如权利要求1所述的防止非易失性存储器发生读取干扰的方法,其特征在于,还包括:
纪录该第二区块被读取的次数;以及
当该第二区块的读取次数大于一预设值时,更新该第二区块内所储存的该程序码。
3.如权利要求2所述的防止非易失性存储器发生读取干扰的方法,其特征在于,于“纪录该第二区块被读取的次数”的步骤包括:
利用一读取次数表纪录该第二区块被读取的次数,其中该读取次数表具有对应该第二区块的一第一计数值,且该第一计数值用以表示为该第二区块被读取的次数。
4.如权利要求3所述的防止非易失性存储器发生读取干扰的方法,其特征在于,于“更新该第二区块内所储存的该程序码”的步骤包括:
将该第二区块内所储存的该程序码复制至该些区块中的至少一第三区块,其中该读取次数表还具有对应该第三区块的一第二计数值,且该第二计数值用以表示为该第三区块被读取的次数;以及
以该第三区块替代该第二区块,并且更新该第一计数值。
5.如权利要求4所述的防止非易失性存储器发生读取干扰的方法,其特征在于,于“更新该第二区块内所储存的该程序码”的步骤还包括:
将相邻于该第二区块的至少一第四区块内原先所储存的资料复制至该些区块中的一第五区块,其中该读取次数表还具有对应该第四区块及该第五区块的一第三计数值与一第四计数值,且该第三计数值及该第四计数值用以各别表示为该第四区块及该第五区块被读取的次数;以及
以该第五区块替代该第四区块,并且更新该第三计数值。
6.一种防止非易失性存储器发生读取干扰的系统,其适用于一非易失性存储器储存装置,其中该非易失性存储器具有多数个区块,且每一个区块具有多数个分页,其特征在于,该系统包括:
一第一模块,用以将一程序码储存于该些区块中的至少一第一区块;
一第二模块,用以当供电至该非易失性存储器储存装置时,将该第一区块内所储存的该程序码复制至该些区块中的至少一第二区块;以及
一第三模块,用以从该第二区块中读取该程序码,其中该程序码是由该非易失性存储器储存装置的一控制器所执行以控制该非易失性存储器储存装置并且当该非易失性存储器储存装置运作时,该第二区块中的该程序码会被该控制器读取。
7.如权利要求6所述的防止非易失性存储器发生读取干扰的系统,其特征在于,还包括:
一第四模块,用以纪录该第二区块被读取的次数;以及
一第五模块,用以当该第二区块的读取次数大于一预设值时,更新该第二区块内所储存的该程序码。
8.如权利要求7所述的防止非易失性存储器发生读取干扰的系统,其特征在于,该第四模块利用一读取次数表纪录该第二区块被读取的次数,其中该读取次数表具有对应该第二区块的一第一计数值,且该第一计数值用以表示为该第二区块被读取的次数。
9.如权利要求8所述的防止非易失性存储器发生读取干扰的系统,其特征在于,该第五模块将该第二区块内所储存的该程序码复制至该些区块中的至少一第三区块,并以该第三区块替代该第二区块,且更新该第一计数值,
其中,该读取次数表还具有对应该第三区块的一第二计数值,且该第二计数值用以表示为该第三区块被读取的次数。
10.如权利要求9所述的防止非易失性存储器发生读取干扰的系统,其特征在于,该第五模块将相邻于该第二区块的至少一第四区块内原先所储存的资料同时更新,
其中,该读取次数表还具有对应该第四区块的一第三计数值,且该第三计数值用以表示为该第四区块被读取的次数。
CN201110118081.1A 2008-01-22 2008-01-22 防止非易失性存储器发生读取干扰的方法及其控制器 Active CN102157202B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110118081.1A CN102157202B (zh) 2008-01-22 2008-01-22 防止非易失性存储器发生读取干扰的方法及其控制器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110118081.1A CN102157202B (zh) 2008-01-22 2008-01-22 防止非易失性存储器发生读取干扰的方法及其控制器

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN200810005154.4A Division CN101494085B (zh) 2008-01-22 2008-01-22 防止非易失性存储器发生读取干扰的方法及其控制器

Publications (2)

Publication Number Publication Date
CN102157202A CN102157202A (zh) 2011-08-17
CN102157202B true CN102157202B (zh) 2015-06-17

Family

ID=44438634

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110118081.1A Active CN102157202B (zh) 2008-01-22 2008-01-22 防止非易失性存储器发生读取干扰的方法及其控制器

Country Status (1)

Country Link
CN (1) CN102157202B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103136108B (zh) * 2011-12-05 2016-04-06 慧荣科技股份有限公司 快闪存储装置及其数据读取方法
CN103514103B (zh) * 2012-06-21 2016-09-28 群联电子股份有限公司 数据保护方法、存储器控制器与存储器储存装置
US9230689B2 (en) * 2014-03-17 2016-01-05 Sandisk Technologies Inc. Finding read disturbs on non-volatile memories
US10466913B2 (en) * 2015-04-29 2019-11-05 EMC IP Holding Company LLC Method and system for replicating and using grid level metadata in a storage system
TWI585676B (zh) * 2016-03-18 2017-06-01 慧榮科技股份有限公司 資料儲存裝置、記憶體控制器及其操作方法
TWI594126B (zh) * 2016-07-05 2017-08-01 慧榮科技股份有限公司 資料儲存裝置與資料儲存方法
KR20180014975A (ko) * 2016-08-02 2018-02-12 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
KR20180108939A (ko) * 2017-03-23 2018-10-05 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
US10714195B2 (en) * 2017-08-31 2020-07-14 SK Hynix Inc. Read disturb detection and recovery with adaptive thresholding for 3-D NAND storage
CN109828794B (zh) * 2017-11-23 2021-09-17 建兴储存科技(广州)有限公司 固态储存装置及其相关程序的载入方法
CN114415940B (zh) * 2021-12-16 2023-08-29 航天信息股份有限公司 减少嵌入式系统存储介质读取干扰的方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3176019B2 (ja) * 1995-04-05 2001-06-11 株式会社東芝 不揮発性半導体記憶部を含む記憶システム
JP3816788B2 (ja) * 2001-11-22 2006-08-30 株式会社東芝 不揮発性半導体記憶装置
JP2004310650A (ja) * 2003-04-10 2004-11-04 Renesas Technology Corp メモリ装置

Also Published As

Publication number Publication date
CN102157202A (zh) 2011-08-17

Similar Documents

Publication Publication Date Title
CN101494085B (zh) 防止非易失性存储器发生读取干扰的方法及其控制器
CN102157202B (zh) 防止非易失性存储器发生读取干扰的方法及其控制器
US8533385B2 (en) Method for preventing read-disturb happened in non-volatile memory and controller thereof
US8037232B2 (en) Data protection method for power failure and controller using the same
US8516184B2 (en) Data updating using mark count threshold in non-volatile memory
US20090222643A1 (en) Block management method for flash memory and controller and storage sysetm using the same
TWI479314B (zh) 系統資料儲存方法、記憶體控制器與記憶體儲存裝置
TWI435329B (zh) 快閃記憶體管理方法、快閃記憶體控制器與儲存系統
US8489942B1 (en) Memory management method, and memory controller and memory storage device using the same
CN104699413A (zh) 数据管理方法、存储器存储装置及存储器控制电路单元
TWI498899B (zh) 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
US9383929B2 (en) Data storing method and memory controller and memory storage device using the same
CN101408864B (zh) 用于断电时的数据保护方法及使用此方法的控制器
CN103678162B (zh) 系统数据储存方法、存储器控制器与存储器储存装置
CN102890655A (zh) 存储器储存装置、其存储器控制器与有效数据识别方法
US9778862B2 (en) Data storing method for preventing data losing during flush operation, memory control circuit unit and memory storage apparatus
CN103106148B (zh) 区块管理方法、存储器控制器与存储器存储装置
TWI451247B (zh) 資料寫入方法、記憶體控制器與記憶體儲存裝置
US11347433B2 (en) Method for performing sudden power off recovery management, associated memory device and controller thereof, and associated electronic device
CN102800357A (zh) 程序码载入与存取方法、存储器控制器与存储器储存装置
CN101566969B (zh) 提升非易失性存储器存储装置的管理效能的方法及控制器
US8276033B2 (en) Data writing method for a flash memory, and flash memory controller and flash memory storage apparatus using the same
US9009389B2 (en) Memory management table processing method, memory controller, and memory storage apparatus
CN102543184A (zh) 存储器储存装置、其存储器控制器与数据写入方法
CN113138720B (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