防止读取干扰的方法、存储器控制电路单元与存储装置的制造方法【
技术领域:
】[0001]本发明是有关于一种用于可复写式非易失性存储器模块的防止读取干扰的方法、存储器控制电路单元与存储装置。【
背景技术:
】[0002]数码相机、手机与MP3在这几年来的成长十分迅速,使得消费者对存储媒体的需求也急速增加。由于可复写式非易失性存储器(rewritablenon-volatilememory)具有数据非易失性、省电、体积小、无机械结构、读写速度快等特性,因此,近年可复写式非易失性存储器产业成为电子产业中相当热门的一环。例如,以快闪存储器作为存储媒体的固态硬盘(Solid-statedrive)已广泛应用作为电脑主机的硬盘,以提升电脑的存取效能。[0003]依据每个存储单元可存储的比特数,反及(NAND)型快闪存储器可区分为单阶存储单元(SingleLevelCell,简称SLC)NAND型快闪存储器、多阶存储单元(MultiLevelCell,简称MLC)NAND型快闪存储器与复数阶存储单元(TrinaryLevelCell,简称TLC)NAND型快闪存储器。其中SLCNAND型快闪存储器的每个存储单元可存储1个比特的数据(即,“1”与“0”),MLCNAND型快闪存储器的每个存储单元可存储2个比特的数据并且TLCNAND型快闪存储器的每个存储单元可存储3个比特的数据。[0004]在NAND型快闪存储器中,实体程序化单元是由排列在同一条字符线上的数个存储单元所组成。由于SLCNAND型快闪存储器的每个存储单元可存储1个比特的数据,因此,在SLCNAND型快闪存储器中,排列在同一条字符线上的数个存储单元是对应一个实体程序化单元。[0005]相对于SLCNAND型快闪存储器来说,MLCNAND型快闪存储器的每个存储单元的浮动栅存储层可存储2个比特的数据,其中每一个存储状态(即,“11”、“10”、“01”与“00”)包括最低有效比特(LeastSignificantBit,简称LSB)以及最高有效比特(MostSignificantBit,简称MSB)。例如,存储状态中从左侧算起的第1个比特的值为LSB,而从左侧算起的第2个比特的值为MSB。因此,排列在同一条字符线上的数个存储单元可组成2个实体程序化单元,其中由此些存储单元的LSB所组成的实体程序化单元称为下实体程序化单元(lowphysicalpage),并且由此些存储单元的MSB所组成的实体程序化单元称为上实体程序化单元(upperphysicalpage)。特别是,下实体程序化单元的写入速度会快于上实体程序化单元的写入速度,并且当程序化上实体程序化单元发生错误时,下实体程序化单元所存储的数据也可能因此遗失。[0006]类似地,在TLCNAND型快闪存储器中,每个存储单元可存储3个比特的数据,其中每一个存储状态(即,“111,,、“110,,、“101,,、“100,,、“011”、“010”、“001”与“000”)包括每一个存储状态包括左侧算起的第1个比特的LSB、从左侧算起的第2个比特的中间有效比特(CenterSignificantBit,简称CSB)以及从左侧算起的第3个比特的MSB。因此,排列在同一条字符线上的数个存储单元可组成3个实体程序化单元,其中由此些存储单元的LSB所组成的实体程序化单元称为下实体程序化单元,由此些存储单元的CSB所组成的实体程序化单元称为中实体程序化单元,并且由此些存储单元的MSB所组成的实体程序化单元称为上实体程序化单元。特别是,对排列在同一条字符线上的数个存储单元进行程序化时,仅能选择仅程序化下实体程序化单元或者同时程序化下实体程序化单元、中实体程序化单元与上实体程序化单元,否则所存储的数据可能会遗失。[0007]然而,无论是哪种存储单元快闪存储器模块,在对同一个实体区块所存储的数据进行多次读取时,例如十万至百万次间的读取次数,很有可能会发生所读取的数据是错误的状况,甚至此被多次读取区块内所存储的数据会发生异常或遗失。而此类现象本领域技术人员惯称为“读取干扰”(read-disturb)。特别是,快闪存储器模块中会存储快闪存储器存储系统的系统数据(例如固件码(FirmwareCode)、文件配置表(FileAllocat1nTable,简称FAT),且此系统数据会在快闪存储器存储系统运作期间高频率地的读取。也因有着这样的现象存在着,无不驱使着各家厂商必须发展出能确保正确存储数据的机制。【
发明内容】[0008]本发明提供一种防止读取干扰的方法、存储器控制电路单元与存储装置,其能够有效地预防读取干扰的发生。[0009]本发明的一范例实施例提出一种用于可复写式非易失性存储器模块的防止读取干扰的方法,此可复写式非易失性存储器模块包括多个实体抹除单元。本防止读取干扰的方法包括:当从主机系统接收到操作指令时,计数操作次数值,其中此些实体抹除单元之中的第一实体抹除单元被选取以执行此操作指令。本防止读取干扰的方法也包括,当操作次数值不小于操作次数门限值时,选择此些实体抹除单元之中的第二实体抹除单元,并且从第二实体抹除单元中读取数据。本防止读取干扰的方法还包括:根据从第二实体抹除单元中所读取的数据判断第二实体抹除单元是否发生数据错误;以及倘若第二实体抹除单元发生数据错误时,选择此些实体抹除单元之中的第三实体抹除单元,校正从第二实体抹除单元中所读取的数据以产生已校正数据并且将已校正数据写入至第三实体抹除单元。[0010]在本发明的一实施例中,上述防止读取干扰的方法,还包括:将此些实体抹除单元至少分组为数据区与闲置区,其中当操作次数值不小于操作次数门限值时,选择此些实体抹除单元之中的第二实体抹除单元的步骤包括:依序地从数据区的实体抹除单元之中除了对应操作指令的第一实体抹除单元以外的实体抹除单元之中来选出第二实体抹除单元。[0011]在本发明的一实施例中,上述防止读取干扰的方法,还包括:将此些实体抹除单元至少分组为数据区与闲置区,其中当操作次数值不小于操作次数门限值时,选择此些实体抹除单元之中的第二实体抹除单元的步骤包括:随机地从数据区的实体抹除单元之中除了对应操作指令的第一实体抹除单元以外的实体抹除单元之中来选出第二实体抹除单元。[0012]在本发明的一实施例中,上述防止读取干扰的方法,还包括:将此些实体抹除单元至少分组为数据区与闲置区并且配置多个逻辑地址,其中此些逻辑地址映射数据区的多个实体抹除单元。并且,上述当此操作次数值不小于操作次数门限值时,选择此些实体抹除单元之中的第二实体抹除单元的步骤包括:随机地从此些逻辑地址之中选择第一逻辑地址,并且根据逻辑地址-实体抹除单元映射表获取第二实体抹除单元,其中在逻辑地址-实体抹除单元映射表中第一逻辑地址映射第二实体抹除单元。[0013]在本发明的一实施例中,上述的防止读取干扰的方法,还包括:为每一逻辑地址记录一标记,其中此标记会被记录为未选过状态或已选过状态,其中第一逻辑地址的标记被记录为未选过状态。[0014]在本发明的一实施例中,上述防止读取干扰的方法,还包括:在选择第一逻辑地址之后,将第一逻辑地址的标记重新记录为已选过状态。[0015]在本发明的一实施例中,上述根据从第二实体抹除单元中所读取的数据判断第二实体抹除单元是否发生数据错误的步骤包括:当对应从第二实体抹除单元中所读取的数据的错误比特数目大于第一错误比特数目门限值且小于第二错误比特数目门限值时,判断此第二实体抹除单元发生数据错误,其中第二错误比特数目门限值大于第一错误比特数目门限值。[0016]在本发明的一实施例中,上述防止读取干扰的方法,还包括:在选择此些实体抹除单元之中的第三实体抹除单元,校正从第二实体抹除单元中所读取的数据以产生已校正数据并且将已校正数据写入至第三实体抹除单元之后,将此操作次数值归零。[0017]在本发明的一实施例中,上述防止读取干扰的方法,还包括:倘若第二实体抹除单元未发生数据错误时,将此操作次数值归零。[0018]在本发明的一实施例中,上述操作指令为读取指令、写入指令或抹除指令。[0019]在本发明的一实施例中,上述数据错误为读取干扰、数据久置或存储单元磨耗所造成。[0020]本发明的一范例实施例提出一种用于控制可复写式非易失性存储器模块的存储器控制电路单元。此存储器控制电路单元包括主机接口、存储器接口与存储器管理电路。主机接口用以耦接至主机系统。存储器接口用以耦接至可复写式非易失性存储器模块,其中可复写式非易失性存储器模块具有多个实体抹除单元。存储器管理电路耦接至主机接口与存储器接口。在此,存储器管理电路还用以当从主机系统接收到操作指令时,计数操作次数值,其中此些实体抹除单元之中的第一实体抹除单元被选取以执行此操作指令。并且,存储器管理电路还用以当操作次数值不小于操作次数门限值时,选择此些实体抹除单元之中的第二实体抹除单元,并且下达第一指令序列以从第二实体抹除单元中读取数据。此外,存储器管理电路还用以根据从第二实体抹除单元中所读取的数据判断第二实体抹除单元是否发生数据错误,并且倘若此第二实体抹除单元发生数据错误时,存储器管理电路选择此些实体抹除单元之中的第三实体抹除单元,校正从第二实体抹除单元中所读取的数据以产生已校正数据并且下达第二指令序列以将已校正数据写入至第三实体抹除单元。[0021]在本发明的一实施例中,上述存储器管理电路还用以将此些实体抹除单元至少分组为数据区与闲置区并且依序地从数据区的实体抹除单元之中除了对应操作指令的第一实体抹除单元以外的实体抹除单元之中来选出第二实体抹除单元。[0022]在本发明的一实施例中,上述存储器管理电路还用以将此些实体抹除单元至少分组为数据区与闲置区并且随机地从数据区的实体抹除单元之中除了对应操作指令的第一实体抹除单元以外的实体抹除单元之中来选出第二实体抹除单元。[0023]在本发明的一实施例中,上述存储器管理电路还用以将此些实体抹除单元至少分组为数据区与闲置区并且配置多个逻辑地址,其中此些逻辑地址映射数据区的多个实体抹除单元。此外,存储器管理电路还用以随机地从此些逻辑地址之中选择第一逻辑地址,并且根据逻辑地址-实体抹除单元映射表获取第二实体抹除单元,其中在逻辑地址-实体抹除单元映射表中第一逻辑地址映射第二实体抹除单元。[0024]在本发明的一实施例中,上述存储器管理电路还用以为每一逻辑地址记录一标记,其中此标记会被记录为未选过状态或已选过状态,其中第一逻辑地址的标记被记录为未选过状态。[0025]在本发明的一实施例中,上述在存储器管理电路选择第一逻辑地址之后,存储器管理电路还用以将第一逻辑地址的标记重新记录为已选过状态。[0026]在本发明的一实施例中,上述存储器管理电路还用以当对应从第二实体抹除单元中所读取的数据的错误比特数目大于第一错误比特数目门限值且小于第二错误比特数目门限值时,判断第二实体抹除单元发生数据错误,其中第二错误比特数目门限值大于第一错误比特数目门限值。[0027]在本发明的一实施例中,上述在存储器管理电路选择此些实体抹除单元之中的第三实体抹除单元,校正从第二实体抹除单元中所读取的数据以产生已校正数据并且下达第二指令序列以将已校正数据写入至第三实体抹除单元之后,存储器管理电路还用以将操作次数值归零。[0028]在本发明的一实施例中,上述存储器管理电路还用以在倘若第二实体抹除单元未发生数据错误时,将操作次数值归零。[0029]在本发明的一实施例中,上述操作指令为读取指令、写入指令或抹除指令。[0030]在本发明的一实施例中,上述数据错误为读取干扰、数据久置或存储单元磨耗所造成。[0031]本发明的一范例实施例提出一种存储器存储装置,其包括连接接口单元、可复写式非易失性存储器模块与存储器控制电路单元。连接接口单元用以耦接至主机系统。可复写式非易失性存储器模块具有多个实体抹除单元。存储器控制电路单元耦接当前第1页1 2 3 4 5 6