存取闪存模块的方法及相关的闪存控制器与记忆装置制造方法及图纸

技术编号:16644448 阅读:36 留言:0更新日期:2017-11-26 16:48
本发明专利技术公开了一种存取闪存模块的方法及相关的闪存控制器与记忆装置。所述闪存模块是包含了多个闪存芯片的立体闪存模块,每一个闪存芯片包含了多个区块,每一个区块包含了多个数据页;以及所述方法包含有:规划所述多个闪存芯片以使得所述多个闪存芯片具有至少一个超级区块;以及指派一缓冲存储器空间以用来储存在一数据写入至所述至少一个超级区块的过程中所编码产生的多组暂时性的校验码。据此可以对数据写入错误、字符线断路以及字符线短路的数据读取错误进行更正,也可以大幅降低缓冲存储器的容量需求,且不需要浪费太多个空间储存校验码,降低的成本以及使用效率。

Method for accessing flash memory module and related flash memory controller and memory device

The invention discloses a method for accessing a flash memory module and related flash memory controller and memory device. The flash memory module is a three-dimensional flash memory module includes a plurality of memory chips, each flash chip contains a plurality of blocks, each block contains multiple data pages; and the method comprises: programming the plurality of memory chips so that the plurality of flash memory chips with at least one a super block; and assigning a buffer memory space to store the encoding process produced at least one super block in a data write to the check code was temporary. Accordingly, the data writing error, the character line opening and the short reading of the character line short circuit can be corrected, and the capacity requirement of the buffer memory can be greatly reduced, without wasting too many space storage check codes, thereby reducing the cost and the utilization efficiency.

【技术实现步骤摘要】
存取闪存模块的方法及相关的闪存控制器与记忆装置
本专利技术涉及闪存,尤其涉及一种存取闪存模块的方法及相关的闪存控制器与记忆装置。
技术介绍
为了让闪存能够有更高的密度以及更大的容量,闪存的制程也朝向立体化的发展,而产生了几种不同的立体NAND型闪存(3DNAND-typeflash)。在立体NAND型闪存中,由于整体结构的不同以及浮闸形状位置的改变,因此在数据的写入以及读取上也比传统的平面NAND型闪存多出了些许的问题。举例来说,在某些立体NAND型闪存中,会将多条字符线(wordline)定义为一字符线组,而所述字符线组会共同具有部分的控制电路,进而导致当数据写入到所述字符线组的一条字符线的浮闸晶体管发生失败时(写入失败),会连带导致所述字符线组的其他字符线的浮闸晶体管的数据发生错误;此外,如果所述字符线组中的一条字符线发生断路或短路的状况时,也会连带影响到所述字符线组的其他字符线的浮闸晶体管的数据发生错误,因此,如何就上述问题提出一种错误更正方式,以尽可能地维持数据的正确性,且又不会浪费内存空间以节省成本,是一个重要的课题。
技术实现思路
因此,本专利技术的目的的一在于提出一种存取一闪存模块的方法及相关的闪存控制器与记忆装置,其使用类似容错式磁盘阵列(RedundantArrayofIndependentDisks,RAID)的错误更正方式,但是却不会大幅浪费闪存空间,且在闪存控制器的处理过程中也仅需要很少量的缓冲存储器空间,以解决
技术介绍
中的问题。根据本专利技术的实施例,公开了一种存取一闪存模块的方法,其中所述闪存模块是立体闪存(3DNAND-typeflash)模块,所述闪存模块包含了多个闪存芯片,每一个闪存芯片包含了多个区块,所述多个区块包含了多个多层式储存(Multiple-LevelCell,MLC)区块,每一个区块包含了多个数据页,每一个区块包含了分别位于多个不同平面的多条字符线以及位线来控制的多个浮闸晶体管,且每一条字符线的浮闸晶体管构成了所述多个数据页中的至少一数据页。以及所述方法包含有:对一数据进行编码以产生至少一组校验码,其中所述数据准备写入到所述多个闪存芯片的一超级区块(superblock)中,其中所述超级区块包含了所述多个闪存芯片中每一个闪存芯片的一个多级单元区块;将所述数据写入至所述超级区块;将所述至少一组校验码写入暂存至一缓冲存储器中;以及从所述缓冲存储器读取出所述至少一组校验码,对所述至少一组校验码进行编码以产生至少一组最终校验码,将所述至少一组最终校验码写入至所述超级区块的一闪存芯片的多個数据页。根据本专利技术的实施例,另公开了一种闪存控制器,所述闪存控制器用来存取闪存模块,其中所述闪存模块是立体闪存模块,所述闪存模块包含了多个闪存芯片,每一个闪存芯片包含了多个区块,所述多个区块包含了多个多级单元区块,每一个区块包含了多个数据页,每一个区块包含了分别位于多个不同平面的多条字符线以及位线来控制的多个浮闸晶体管,且每一条字符线的浮闸晶体管构成了所述多个数据页中的至少一数据页。所述闪存控制器包含有一内存、一微处理器及一编译码器,所述内存用来储存一程序代码,微处理器用来执行所述程序代码以控制对所述闪存模块的存取,所述编译码器对一数据进行编码以产生至少一组校验码,其中所述数据准备写入到所述多个闪存芯片的一超级区块中,其中所述超级区块包含了所述多个闪存芯片中每一个闪存芯片的一个多级单元区块,以及所述微处理器将所述数据写入至所述超级区块,将所述至少一组校验码写入暂存至一缓冲存储器中,以及从所述缓冲存储器读取出所述至少一组校验码,对所述至少一组校验码进行编码以产生至少一组最终校验码,将所述至少一组最终校验码写入至所述超级区块的一闪存芯片的多個数据页。根据本专利技术的实施例,另公开了一种记忆装置,记忆装置包含有一闪存模块及一闪存控制器,闪存模块是立体闪存模块并包含了多个闪存芯片,每一个闪存芯片包含了多个区块,所述多个区块包含了多个多级单元区块,每一个区块包含了多个数据页,每一个区块包含了分别位于多个不同平面的多条字符线以及位线来控制的多个浮闸晶体管,且每一条字符线的浮闸晶体管构成了所述多个数据页中的至少一数据页。闪存控制器用来存取闪存模块,当接收到来自一主机的写入指令以要求将一数据写入至闪存模块中时,闪存控制器对所述数据进行编码以产生至少一组校验码,并将所述数据写入到多个闪存芯片的一超级区块中,其中所述超级区块包含了所述多个闪存芯片中每一个闪存芯片的一个多级单元区块,闪存控制器将所述至少一组校验码写入暂存至一缓冲存储器中,以及从缓冲存储器读取出所述至少一组校验码,对所述至少一组校验码进行编码以产生至少一组最终校验码,将所述至少一组最终校验码写入至所述超级区块的一闪存芯片的多個数据页。根据本专利技术的实施例,另公开了一种存取一闪存模块的方法,闪存模块是立体闪存模块并包含了多个闪存芯片,每一个闪存芯片包含了多个区块,每一个区块包含了多个数据页,每一个区块包含了分别位于多个不同平面的多条字符线以及位线来控制的多个浮闸晶体管,且每一条字符线的浮闸晶体管构成了所述多个数据页中的至少一个数据页。所述方法包含有:规划所述多个闪存芯片以使得所述多个闪存芯片具有至少一个超级区块;以及配置一缓冲存储器空间以用来储存在一数据写入至所述至少一个超级区块的过程中所编码产生的多组暂时性的校验码。根据本专利技术的实施例,另公开了一种闪存控制器,闪存控制器用来存取一闪存模块,其中闪存模块是立体闪存模块并包含了多个闪存芯片,每一个闪存芯片包含了多个区块,每一个区块包含了多个数据页,每一个区块包含了分别位于多个不同平面的多条字符线以及位线来控制的多个浮闸晶体管,且每一条字符线的浮闸晶体管构成了所述多个数据页中的至少一个数据页。闪存控制器包含有一内存、一微处理器及一编译码器,内存用来储存一程序代码,微处理器用来执行所述程序代码以控制对闪存模块的存取,微处理器规划多个闪存芯片以使得所述多个闪存芯片具有至少一个超级区块,以及配置一缓冲存储器空间以用来储存在一数据写入至所述至少一个超级区块的过程中所编码产生的多组暂时性的校验码。根据本专利技术的实施例,另公开了一种记忆装置,内存装置包含有一闪存模块及一闪存控制器,闪存模块是立体闪存模块并包含了多个闪存芯片,每一个闪存芯片包含了多个区块,每一个区块包含了多个数据页,每一个区块包含了分别位于多个不同平面的多条字符线以及位线来控制的多个浮闸晶体管,且每一条字符线的浮闸晶体管构成了所述多个数据页中的至少一个数据页。闪存控制器用来存取闪存模块,闪存控制器规划多个闪存芯片以使得多个闪存芯片具有至少一个超级区块,以及指派一缓冲存储器空间以用来储存在一数据写入至所述至少一个超级区块的过程中所编码产生的多组暂时性的校验码。附图说明图1是依据本专利技术一实施例的一种记忆装置的示意图。图2是立体NAND型闪存的范例示意图。图3是浮闸晶体管结构的概念示意图。图4是区块中多个字符线组的示意图。图5是闪存控制器将数据写入到闪存模块、以及超级区块的示意图。图6是依据本专利技术第一实施例的闪存控制器将数据写入到超级区块的示意图。图7是根据图6所示的第1~192组校验码S0~S191采用里德-所罗门编码来产生8组最终校验码SF0~SF7的本文档来自技高网...
存取闪存模块的方法及相关的闪存控制器与记忆装置

【技术保护点】
一种存取闪存模块的方法,其特征在于,所述闪存模块是立体闪存模块,所述闪存模块包含了多个闪存芯片,每一个闪存芯片包含了多个区块,所述多个区块包含了多个多级单元区块,每一个区块包含了多个数据页;每一个区块包含了分别位于多个不同平面的多条字符线以及位线来控制的多个浮闸晶体管,且每一条字符线的浮闸晶体管构成了所述多个数据页中的至少一个数据页;以及所述方法包含:对数据进行编码以产生至少一组校验码,其中所述数据是准备被写入到所述多个闪存芯片的超级区块中,其中所述超级区块包含了所述多个闪存芯片中每一个闪存芯片的一个多级单元区块;将所述数据写入至所述超级区块;将所述至少一组校验码写入暂存至缓冲存储器中;以及从所述缓冲存储器读取出所述至少一组校验码,对所述至少一组校验码进行编码以产生至少一组最终校验码,将所述至少一组最终校验码写入至所述超级区块的闪存芯片的多个数据页。

【技术特征摘要】
2017.01.03 TW 106100010;2016.04.27 US 62/328,025;21.一种存取闪存模块的方法,其特征在于,所述闪存模块是立体闪存模块,所述闪存模块包含了多个闪存芯片,每一个闪存芯片包含了多个区块,所述多个区块包含了多个多级单元区块,每一个区块包含了多个数据页;每一个区块包含了分别位于多个不同平面的多条字符线以及位线来控制的多个浮闸晶体管,且每一条字符线的浮闸晶体管构成了所述多个数据页中的至少一个数据页;以及所述方法包含:对数据进行编码以产生至少一组校验码,其中所述数据是准备被写入到所述多个闪存芯片的超级区块中,其中所述超级区块包含了所述多个闪存芯片中每一个闪存芯片的一个多级单元区块;将所述数据写入至所述超级区块;将所述至少一组校验码写入暂存至缓冲存储器中;以及从所述缓冲存储器读取出所述至少一组校验码,对所述至少一组校验码进行编码以产生至少一组最终校验码,将所述至少一组最终校验码写入至所述超级区块的闪存芯片的多个数据页。2.如权利要求1所述的方法,其特征在于,当所述数据发生写入错误或写入失败的情形时,所述的方法另包含:直接使用暂存在所述缓冲存储器中的所述至少一组校验码来对所述数据进行更正。3.如权利要求1所述的方法,其特征在于,在所述数据写入至所述超级区块的过程中:自所述超级区块读取所述数据的已经写入至所述超级区块的部分内容;以及当读取所述数据的部分内容的过程中发生无法更正的错误时,自所述缓冲存储器读取出至少一部份的校验码,且使用所述至少一部份的校验码来对所读取的数据进行错误更正。4.如权利要求1所述的方法,其特征在于,依序对第1~N笔数据进行编码以产生第1~N组校验码,并将所述第1~N笔数据分别写入至所述超级区块的对应于所述多个闪存芯片的第1~N个数据页中,以及将所述第1~N组校验码写入至所述缓冲存储器。5.如权利要求1所述的方法,其特征在于,所述至少一组校验码是暂时性的校验码,且自所述第二超级区块读取所述第1~N组校验码,并根据所述第1~N组校验码来产生多组最终校验码,之后再将所述多组最终校验码写入至所述超级区块中。6.如权利要求5所述的方法,其特征在于,其中每一个区块中位于同一个平面上的多条字符线构成一个字符线组,且将所述多组最终校验码写入至所述超级区块的最后两个字符线组中对应于闪存芯片的数据页中。7.如权利要求1所述的方法,其特征在于,所述多级单元区块是三级单元区块或四级单元区块。8.一种闪存控制器,所述闪存控制器用来存取闪存模块,其特征在于,所述闪存模块是立体闪存模块,所述闪存模块包含了多个闪存芯片,每一个闪存芯片包含了多个区块,所述多个区块包含了多个多级单元区块,每一个区块包含了多个数据页;每一个区块包含了分别位于多个不同平面的多条字符线以及位线来控制的多个浮闸晶体管,且每一条字符线的浮闸晶体管构成了所述多个数据页中的至少一个数据页;以及所述闪存控制器包含:一存储器,用来储存一程序代码;一微处理器,用来执行所述程序代码以控制对所述闪存模块的存取;以及一编译码器;所述编译码器对一数据进行编码以产生至少一组校验码,其中所述数据准备写入到所述多个闪存芯片的一个超级区块中,其中所述超级区块包含了所述多个闪存芯片中每一个闪存芯片的多级单元区块;以及所述微处理器将所述数据写入至所述超级区块,将所述至少一组校验码写入暂存至缓冲存储器中,以及从所述缓冲存储器读取出所述至少一组校验码,对所述至少一组校验码进行编码以产生至少一组最终校验码,将所述至少一组最终校验码写入至所述超级区块的闪存芯片的多个数据页。9.如权利要求8所述的闪存控制器,其特征在于,当所述数据发生写入错误或写入失败的情形时,所述的方法另包含:所述编译码器直接使用暂存在所述缓冲存储器中的所述至少一组校验码来对所述数据进行更正。10.如权利要求8所述的闪存控制器,其特征在于,在所述数据写入至所述超级区块的过程中:所述微处理器自所述超级区块读取所述数据的已经写入至所述超级区块的部分内容;以及当读取所述数据的部分内容的过程中发生无法更正的错误时,所述微处理器自所述缓冲存储器读取出至少一部份的校验码,且使用所述至少一部份的校验码来对所读取的数据进行错误更正。11.如权利要求8所述的闪存控制器,其特征在于,所述编译码器依序对第1~N笔数据进行编码以产生第1~N组校验码,并将所述第1~N笔数据分别写入至所述超级区块的对应于所述多个闪存芯片的第1~N个数据页中,以及所述微处理器将所述第1~N组校验码写入至所述缓冲存储器。12.如权利要求8所述的闪存控制器,其特征在于,所述至少一组校验码是暂时性的校验码,且所述微处理器自所述第二超级区块读取所述第1~N组校验码,并根据所述第1~N组校验码来产生多组最终校验码,之后再将所述多组最终校验码写入至所述超级区块中。13.如权利要求12所述的闪存控制器,其特征在于,其中每一个区块中位于同一个平面上的多条字符线构成一个字符线组,且所述微处理器将所述多组最终校验码写入至所述超级区块的最后两个字符线组中对应于闪存芯片的数据页中。14.如权利要求8所述的闪存控制器,其特征在于,所述多级单元区块是三级单元区块或四级单元区块。15.一种记忆装置,其特征在于,包含:一闪存模块,其中所述闪存模块是立体闪存模块,所述闪存模块包含了多个闪存芯片,每一个闪存芯片包含了多个区块,所述多个区块包含了多个多级单元区块,每一个区块包含了多个数据页;每一个区块包含了分别位于多个不同平面的多条字符线以及位线来控制的多个浮闸晶体管,且每一条字符线...

【专利技术属性】
技术研发人员:杨宗杰许鸿荣
申请(专利权)人:慧荣科技股份有限公司
类型:发明
国别省市:中国台湾,71

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

1