数据保护方法、存储器控制器与存储器储存装置制造方法及图纸

技术编号:10847201 阅读:105 留言:0更新日期:2014-12-31 18:24
本发明专利技术提出一种数据保护方法,存储器控制器与存储器储存装置。此方法包括:接收来自于主机系统的第一刷新指令与指示写入第一数据的第一写入指令;根据第一数据产生第一错误校正码与第二错误校正码,此两者的保护能力不相同;接收指示写入第二数据的第二写入指令;在接收第一写入指令之后,接收来自主机系统的第二刷新指令,并在之后将第一数据相对应的第二错误校正码写入至可复写式非易失性存储器模块中;不对该第二数据产生相对应的第二错误校正码,或产生但不写入至该可复写式非易失性存储器模块中。藉此,可以保护来自主机系统的数据。

【技术实现步骤摘要】

本专利技术是有关于一种数据保护方法,且特别是有关于一种用于可复写式非易失性存储器模块的数据保护方法、存储器控制器与存储器储存装置。 
技术介绍
数字相机、移动电话与MP3播放器在这几年来的成长十分迅速,使得消费者对储存媒体的需求也急速增加。由于可复写式非易失性存储器模块(例如,闪存)具有数据非易失性、省电、体积小,以及无机械结构等特性,所以非常适合内建于上述所举例的各种可携式多媒体装置中。 在多阶存储单元(Multi Level Cell,MLC)NAND型闪存模块中,每一个物理抹除单元会包括多个物理编程单元,并且这些物理编程单元会被分为下物理编程单元与上物理编程单元。当上物理编程单元被编程时若发生了系统的错误,则属于同一个字线的下物理编程单元中的数据可能会发生错误。此外,当数据要被写入时,必须先编程下物理编程单元才能编程上物理编程单元。主机系统可以通过写入指令把数据写入至可复写式非易失性存储器模块。主机系统也可能下达一个刷新(Flush)指令,用以清空一个逻辑范围内的数据,使得这些数据不会储存在一个易失性的存储器中。一般来说,这些被清空的数据会被写入至可复写式非易失性存储器模块中,并且主机系统会认为下达刷新指令之前的数据都已经完整且安全地被写入了。然而,若主机系统下达了刷新指令之前数据先被写入至一个下物理编程单元,且在刷新指令之后属于同一个字线的上物理编程单元被编程且发生系统错误,则该下物理编程单元的数据可能会发生错误。因此,如何保护这些数据为本领域技术人员所关心的议题。 
技术实现思路
本专利技术提供一种数据保护方法、存储器控制器与存储器储存装置,可以 保护可复写式非易失性记体模块中的数据。 本专利技术一范例实施例提出一种数据保护方法,用于控制一可复写式非易失性存储器模块,其包括多个物理抹除单元。此数据保护方法包括:接收来自于主机系统的一个第一刷新指令;在接收第一刷新指令之后,接收来自主机系统的第一写入指令,其中第一写入指令指示写入第一数据;根据第一数据产生第一错误校正码与相对应的第二错误校正码,其中第二错误校正码的保护能力不同于第一错误校正码的保护能力;收指示写入第二数据的第二写入指令;在接收第一写入指令之后,接收来自主机系统的一个第二刷新指令,其中第二刷新指令指示将在一缓冲存储器中的第一数据与第二数据写入至可复写式非易失性存储器模块中;将第一数据、第一错误校正码与第二数据写入至可复写式非易失性存储器模块中;以及在接收到第二刷新指令之后,将第一数据相对应的第二错误校正码写入至可复写式非易失性存储器模块中;不对第二数据产生相对应的第二错误校正码,或产生第二数据相对应的第二错误校正码但不把它写入至该可复写式非易失性存储器模块中。 在一范例实施例中,上述的每一个物理抹除单元包括多个物理编程单元,第一错误校正码是仅根据对应于单一个物理编程单元的第一数据所产生,第二错误校正码是根据对应于多个物理编程单元的第一数据所产生。 在一范例实施例中,上述产生第一数据相对应的第二错误校正码的步骤包括:根据对应于一预设数目的物理编程单元的第一数据来产生第二错误校正码,其中预设数目大于1。 在一范例实施例中,上述的物理编程单元被分组为多个上物理编程单元与多个下物理编程单元,并且产生第二错误校正码的步骤包括:根据第一数据中对应于至少一个下物理编程单元的部分来产生第二错误校正码。 在一范例实施例中,上述产生第二错误校正码的步骤包括:仅对缓冲存储器中该第一数据对应于至少一个下物理编程单元的部分来产生第二错误校正码。 在一范例实施例中,上述该至少一个下物理编程单元对应的上物理编程单元没有被编程。 在一范例实施例中,上述产生第一数据相对应的第二错误校正码的步骤包括:根据缓冲存储器中第一数据对应于至少一个下物理编程单元的部分与对应于一个第二物理编程单元的部分来产生第二错误校正码。其中该至少一 个下物理编程单元对应的上物理编程单元没有被编程,并且第二物理编程单元是相邻于该至少一个下物理编程单元。 在一范例实施例中,上述的每一个物理编程单元包括一数据位区与一冗余位区,并且第一错误校正码是储存在冗余位区。此数据保护方法还包括:在开机后,提取一个第一物理抹除单元,其中第一物理抹除单元中的物理编程单元尚未被全部编程;根据第一物理抹除单元中冗余位区所储存的数据来检查第一物理抹除单元中数据位区所储存的数据是否发生错误;若第一物理抹除单元中的一个第一物理编程单元的数据位区所储存的数据发生一个第一错误并且第一物理编程单元的冗余位区所储存的数据无法校正此第一错误,则判断第一物理编程单元是否在第一数据相对应的第二错误校正码的保护能力内;以及若第一物理编程单元是在此第二错误校正码的保护能力内,根据第二错误校正码来校正第一错误。 以另外一个角度来说,本专利技术一范例实施例提出一种存储器储存装置,包括连接器、上述的可复写式非易失性存储器模块与存储器控制器。连接器是用以电性连接至主机系统。存储器控制器是电性连接至连接器与可复写式非易失性存储器模块,用以接收来自于主机系统的第一刷新指令,并且在接收第一刷新指令之后,接收来自主机系统的第一写入指令,其中第一写入指令指示写入第一数据。存储器控制器也用以根据第一数据产生第一错误校正码与相对应的第二错误校正码,其中第二错误校正码的保护能力不同于第一错误校正码的保护能力。存储器控制器也用以接收来自主机系统并指示写入第二数据的第二写入指令。在接收第一写入指令与第二写入指令之后,存储器控制器也用以接收来自主机系统的第二刷新指令,其中第二刷新指令指示将在一缓冲存储器中的第一数据与第二数据写入至可复写式非易失性存储器模块中。存储器控制器也用以将第一数据、第一错误校正码与第二数据写入至可复写式非易失性存储器模块中。在接收到第二刷新指令之后,存储器控制器用以将第一数据相对应的第二错误校正码写入至可复写式非易失性存储器模块中。存储器控制器还用以不对第二数据产生相对应的第二错误校正码,或产生第二数据相对应的第二错误校正码但不把它写入至可复写式非易失性存储器模块中。 在一范例实施例中,上述的存储器控制器产生第一数据相对应的第二错误校正码的操作包括:存储器控制器根据对应于预设数目的物理编程单元的 第一数据来产生第二错误校正码,其中预设数目大于1。 在一范例实施例中,上述的存储器控制器产生第一数据相对应的第二错误校正码的操作包括:存储器控制器根据第一数据中对应于至少一个下物理编程单元的部分来产生第二错误校正码。 在一范例实施例中,上述存储器控制器产生第一数据相对应的第二错误校正码的操作包括:存储器控制器仅对缓冲存储器中第一数据对应于至少一个下物理编程单元的部分来产生第二错误校正码。 在一范例实施例中,上述存储器控制器产生第一数据相对应的第二错误校正码的操作包括:存储器控制器根据缓冲存储器中第一数据对应于至少一个下物理编程单元的部分与对应于第二物理编程单元的部分来产生第二错误校正码。其中该至少一个下物理编程单元对应的上物理编程单元没有被编程,并且第二物理编程单元是相邻于该至少一个下物理编程单元。 ...
数据保护方法、存储器控制器与存储器储存装置

【技术保护点】
一种数据保护方法,其特征在于,用于控制一可复写式非易失性存储器模块,其中该可复写式非易失性存储器模块包括多个物理抹除单元,该数据保护方法包括:接收来自于一主机系统的一第一刷新指令;在接收该第一刷新指令之后,接收来自该主机系统的一第一写入指令,其中该第一写入指令指示写入一第一数据;根据该第一数据产生一第一错误校正码与相对应的一第二错误校正码,其中该第二错误校正码的一保护能力不同于该第一错误校正码的一保护能力;接收一第二写入指令,其中该第二写入指令指示写入一第二数据;在接收该第一写入指令与该第二写入指令之后,接收来自该主机系统的一第二刷新指令,其中该第二刷新指令指示将在一缓冲存储器中的该第一数据与该第二数据写入至该可复写式非易失性存储器模块中;将该第一数据、该第一错误校正码与该第二数据写入至该可复写式非易失性存储器模块中;在接收到该第二刷新指令之后,将该第一数据相对应的该第二错误校正码写入至该可复写式非易失性存储器模块中;以及不对该第二数据产生相对应的一第二错误校正码,或产生该第二数据相对应的该第二错误校正码但不写入该第二数据相对应的该第二错误校正码至该可复写式非易失性存储器模块中。

【技术特征摘要】
1.一种数据保护方法,其特征在于,用于控制一可复写式非易失性存储
器模块,其中该可复写式非易失性存储器模块包括多个物理抹除单元,该数
据保护方法包括:
接收来自于一主机系统的一第一刷新指令;
在接收该第一刷新指令之后,接收来自该主机系统的一第一写入指令,
其中该第一写入指令指示写入一第一数据;
根据该第一数据产生一第一错误校正码与相对应的一第二错误校正码,
其中该第二错误校正码的一保护能力不同于该第一错误校正码的一保护能
力;
接收一第二写入指令,其中该第二写入指令指示写入一第二数据;
在接收该第一写入指令与该第二写入指令之后,接收来自该主机系统的
一第二刷新指令,其中该第二刷新指令指示将在一缓冲存储器中的该第一数
据与该第二数据写入至该可复写式非易失性存储器模块中;
将该第一数据、该第一错误校正码与该第二数据写入至该可复写式非易
失性存储器模块中;
在接收到该第二刷新指令之后,将该第一数据相对应的该第二错误校正
码写入至该可复写式非易失性存储器模块中;以及
不对该第二数据产生相对应的一第二错误校正码,或产生该第二数据相
对应的该第二错误校正码但不写入该第二数据相对应的该第二错误校正码至
该可复写式非易失性存储器模块中。
2.根据权利要求1所述的数据保护方法,其中每一该些物理抹除单元包
括多个物理编程单元,该第一错误校正码是仅根据对应于单一个该物理编程
单元的该第一数据所产生,并且该第一数据相对应的该第二错误校正码是根
据对应于多个该些物理编程单元的该第一数据所产生。
3.根据权利要求2所述的数据保护方法,其中产生该第一数据相对应的
该第二错误校正码的步骤包括:
根据对应于一预设数目的该些物理编程单元的该第一数据来产生该第二
错误校正码,其中该预设数目大于1。
4.根据权利要求1所述的数据保护方法,其中每一该些物理抹除单元包

\t括多个物理编程单元,该些物理编程单元被分组为多个上物理编程单元与多
个下物理编程单元,并且产生该第一数据相对应的该第二错误校正码的步骤
包括:
根据该第一数据中对应于至少一个该些下物理编程单元的部分来产生该
第二错误校正码。
5.根据权利要求1所述的数据保护方法,其中每一该些物理抹除单元包
括多个物理编程单元,该些物理编程单元被分组为多个上物理编程单元与多
个下物理编程单元,并且产生该第一数据相对应的该第二错误校正码的步骤
包括:
仅对该缓冲存储器中该第一数据对应于至少一个该些下物理编程单元的
部分来产生该第二错误校正码。
6.根据权利要求5所述的数据保护方法,其中该至少一个该些下物理编
程单元所对应的上物理编程单元没有被编程。
7.根据权利要求1所述的数据保护方法,其中每一该些物理抹除单元包
括多个物理编程单元,该些物理编程单元被分组为多个上物理编程单元与多
个下物理编程单元,并且产生该第一数据相对应的该第二错误校正码的步骤
包括:
根据该缓冲存储器中该第一数据对应于至少一个该些下物理编程单元的
部分与对应于一第二物理编程单元的部分来产生该第二错误校正码,其中该
至少一个该些下物理编程单元所对应的上物理编程单元没有被编程,并且该
第二物理编程单元是相邻于该至少一个该些下物理编程单元。
8.根据权利要求1所述的数据保护方法,其中每一该些物理抹除单元包
括多个物理编程单元,每一该些物理编程单元包括一数据位区与一冗余位区,
并且该第一错误校正码是储存在该些冗余位区的其中之一,该数据保护方法
更包括:
在开机后,从该些物理抹除单元中提取一第一物理抹除单元,其中该第
一物理抹除单元中的该些物理编程单元尚未被全部编程;
根据该第一物理抹除单元中该些冗余位区所储存的数据来检查该第一物
理抹除单元中该些数据位区所储存的数据是否发生错误;
若该第一物理抹除单元的该些物理编程单元中的一第一物理编程单元的
该数据位区所储存的数据发生一第一错误并且该第一物理编程单元的该冗余

\t位区所储存的数据无法校正该第一错误,判断该第一物理编程单元是否在该
第一数据相对应的该第二错误校正码的该保护能力内;以及
若该第一物理编程单元是在该第一数据相对应的该第二错误校正码的该
保护能力内,根据该第一数据相对应的该第二错误校正码来校正该第一错误。
9.一种存储器储存装置,其特征在于,包括:
一连接器,用以电性连接至一主机系统;
一可复写式非易失性存储器模块,包括多个物理抹除单元;以及
一存储器控制器,电性连接至该连接器与该可复写式非易失性存储器模
块,用以接收来自于该主机系统的一第一刷新指令,并且在接收该第一刷新
指令之后,接收来自该主机系统的一第一写入指令,其中该第一写入指令指
示写入一第一数据,
其中,该存储器控制器用以根据该第一数据产生一第一错误校正码与相
对应的一第二错误校正码,其中该第二错误校正码的一保护能力不同于该第
一错误校正码的一保护能力,
其中,该存储器控制器用以接收一第二写入指令,其中该第二写入指令
指示写入一第二数据,
其中,该存储器控制器用以在接收该第一写入指令与该第二写入指令之
后,接收来自该主机系统的一第二刷新指令,其中该第二刷新指令指示将在
一缓冲存储器中的该第一数据与该第二数据写入至该可复写式非易失性存储
器模块中,
其中,该存储器控制器用以将该第一数据、该第一错误校正码、与该第
二数据写入至该可复写式非易失性存储器模块中,
其中,在接收到该第二刷新指令之后,该存储器控制器用以将该第一数
据相对应的该第二错误校正码写入至该可复写式非易失性存储器模块中,
其中,该存储器控制器不对该第二数据产生相对应的一第二错误校正码,
或产生该第二数据相对应的该第二错误校正码但不写入该第二数据相对应的
该第二错误校正码至该可复写式非易失性存储器模块中。
10.根据权利要求9所述的存储器储存装置,其中每一该些物理抹除单
元包括多个物理编程单元,该第一错误校正码是仅根据对应于单一个该物理
编程单元的该第一数据所产生,该第一数据相对应的第二错误校正码是根据
对应于多个该些物理编程单元的该第一数据所产生。
11.根据权利要求10所述的存储器储存装置,其中该存储器控制器产生
该第一数据相对应的该第二错误校正码的操作包括:
该存储器控制器根据对应于一预设数目的该些物理编程单元的该第一数
据来产生该第二错误校正码,其中该预设数目大于1。
12.根据权利要求9所述的存储器储存装置,其中每一该些物理抹除单
元包括多个物理编程单元,该些物理编程单元被分组为多个上物理编程单元
与多个下物理编程单元,并且该存储器控制器产生该第一数据相对应的该第
二错误校正码的操作包括:
该存储器控制器根据该第一数据中对应于至少一个该些下物理编程单元
的部分来产生该第二错误校正码。
13.根据权利要求9所述的存储器储存装置,其中每一该些物理抹除单
元包括多个物理编程单元,该些物理编程单元被分组为多个上物理编程单元

【专利技术属性】
技术研发人员:梁鸣仁
申请(专利权)人:群联电子股份有限公司
类型:发明
国别省市:中国台湾;71

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1