CN110797071B - 一种多子块nand闪存缺陷的修复方法 - Google Patents
一种多子块nand闪存缺陷的修复方法 Download PDFInfo
- Publication number
- CN110797071B CN110797071B CN201911052876.XA CN201911052876A CN110797071B CN 110797071 B CN110797071 B CN 110797071B CN 201911052876 A CN201911052876 A CN 201911052876A CN 110797071 B CN110797071 B CN 110797071B
- Authority
- CN
- China
- Prior art keywords
- block
- defect
- defects
- sub
- redundant
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/78—Masking faults in memories by using spares or by reconfiguring using programmable devices
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/78—Masking faults in memories by using spares or by reconfiguring using programmable devices
- G11C29/80—Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
- G11C29/816—Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
- G11C29/82—Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout for EEPROMs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/78—Masking faults in memories by using spares or by reconfiguring using programmable devices
- G11C29/838—Masking faults in memories by using spares or by reconfiguring using programmable devices with substitution of defective spares
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C2029/4402—Internal storage of test result, quality data, chip identification, repair information
Landscapes
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Read Only Memory (AREA)
Abstract
本发明公开了一种多子块NAND闪存缺陷的修复方法,包括:测试多子块NAND闪存器件找到包含缺陷的存储单元格的所有块和列,统计缺陷所在位置的数据行和数据列上的缺陷数目;按照缺陷数目对缺陷块以及缺陷列进行顺序排序;根据顺序排序的列表使用冗余来替换缺陷所在位置的数据行和数据列:使用冗余列将缺陷列进行修复,作为修复数据写入闪存使得替换生效;对缺陷块先使用虚拟冗余行将其替换,同一行包括多个子块的同一个行地址,每个子块使用该子块的冗余列替换该子块的列缺陷;然后需要将该缺陷块对应的块的地址写入闪存,并将缺陷块标记为坏块。该方法使得NAND闪存的修复算法更加简洁,从而使得整个流程更加高效,提高了测试设备的产出。
Description
技术领域
本发明涉及NAND闪存器件领域,特别涉及一种多子块NAND闪存缺陷的修复方法。
背景技术
NAND闪存的缺陷主要有三种类型:
行缺陷,列缺陷和散点缺陷。
对于行缺陷通常将行所对应的块标记为坏块;
对于列缺陷使用冗余列对其进行替换;
对于散点缺陷是本发明解决的主要问题,因为仅仅使用冗余列替换散点所在的列往往不能达到较好的测试结果,导致芯片过筛从而影响良率。
现有技术中,一种用于NAND闪存器件中的缺陷修复的方法和装置,公开号:105097045A,公开日:2015-11-25,能够较好的解决这个问题。如图1所示,首先根据缺陷所在的行统计每一行上的有缺陷的数目,计算当前块的块覆盖(块覆盖为:当前块同时被完全修复的块的个数),然后计算块权重(块权重=块覆盖/有缺陷的列的数目),如表1 所示。然后按照冗余列的总数对块权重大的进行修复,权重最大的会先修复,再次统计剩余的冗余列的数目,再次计算权重,最终在冗余用完的情况下其他的缺陷行标记为不可修,这些行对应的块标记为坏块。
表1权重法数据统计表
行 | 有缺陷的列的数目 | 块覆盖 | 块权重 | |
0 | 2 | 2 | 1 | 被修复 |
1 | 3 | 3 | 1 | 被修复 |
2 | 1 | 2 | 2 | 被修复 |
3 | 4 | 2 | 0.5 | 不可修复 |
4 | 2 | 1 | 0.5 | 不可修复 |
5 | 1 | 1 | 1 | 被修复 |
6 | 1 | 2 | 2 | 被修复 |
通常,NAND闪存只存在冗余列,冗余列作为缺陷修复的列,使用冗余列替换有缺陷的数据列,从而提高芯片的良率以及可靠性。但是,冗余列的数目不能太多,太多将浪费数据存储区域的面积。因此在设计过程中会根据NAND闪存的容量设计合理的冗余列。芯片容量随着摩尔定律的增加,NAND闪存在生产过程中的缺陷也随之增多,需要的冗余列的数目也随之增加。
上述提出的NAND闪存修复方法能够解决缺陷数较多、仅仅使用冗余列修复带来的低良率问题。在缺陷数较多,一些极端的情况下该方法使用的时间也比较长,而且这种方法并不能保证使用的资源最少,特别是多子块NAND闪存缺陷问题,还没有很好的解决。
发明内容
为解决现有技术存在的问题,本发明提出一种多子块NAND闪存缺陷的修复方法,该方法使得NAND闪存的修复算法更加简洁,从而使得整个流程更加高效,提高了测试设备的产出。
为实现上述目的,本发明采用以下技术手段:
根据本发明的第一方面:本发明提出一种多子块NAND闪存缺陷的修复方法,包括以下步骤:
测试多子块NAND闪存器件找到包含缺陷的存储单元格的所有块和列,统计缺陷所在位置的数据行和数据列上的缺陷数目;
根据缺陷数目由大到小进行顺序进行排序;
按照所述缺陷数的顺序进行修复:
使用冗余列替换对应的缺陷列;
对缺陷块先使用虚拟冗余行将其替换,同一行包括多个子块的同一个行地址,每个子块使用该子块的冗余列替换该子块的列缺陷。
可选的,统计缺陷数目时还包括缺陷数判断步骤:
判断总的缺陷数是否大于虚拟冗余行和冗余列能够修复的范围:
如是,则不可修复;如否,则判断为可修复,再进行修复。
可选的,所述能修复的范围=(子块1冗余列+字块2冗余列)×虚拟冗余行。
可选的,块缺陷包含多个子块在该行上的所有缺陷总数,列缺陷需要按照子块分别统计该子块的列上的缺陷数目。
可选的,缺陷数排序时,不分块和列的优先级,缺陷数目最大的块或者列排在最前面,最先分配冗余,次最大的依次排列。
可选的,使用冗余列来替换缺陷列之前还包括列冗余判断步骤:
判断有缺陷列的数目是否超过冗余列:
如是,将超过冗余列数目的缺陷列统计为块缺陷;
如否,对块缺陷的个数是否超过虚拟冗余行进行判断:
如是,则不可修复;如否,则判断为可修复。
可选的,如果多个子块中的都有超出的列缺陷,则总的块缺陷应该是多个子块超出冗余可修复的缺陷数和原有的块缺陷的总和。
可选的,按照缺陷数目对缺陷块以及缺陷列进行顺序排序时,任意一个子块的列缺陷超过对应子块的冗余列数目时应当将剩余的缺陷统计为块缺陷。
可选的,对冗余列修复的缺陷列,作为修复数据写入闪存使得替换生效;
对使用虚拟冗余行替换的缺陷块,将该缺陷块对应的块的地址写入闪存,并将缺陷块标记为坏块。
可选的,还包括二次修复步骤:
在上述修复结果的基础上,判断每个子块中剩余冗余列数量,对缺陷数不大于剩余冗余列的缺陷块按照缺陷数从小到大的顺序进行排序;
从缺陷数目最少的块开始使用剩余的冗余列进行替换进行二次修复。
可选的,统计剩余冗余列数量之前还包括判断冗余列步骤:
判断是否还有剩余的冗余列;
如否,则无法继续优化;
如是,则可进行二次修复。
可选的,还包括行缺陷统计的步骤:
对之前被冗余行修复的块的缺陷数再次按子块进行统计,在统计时去掉已经被冗余列修复的缺陷。
可选的,缺陷行排序具体步骤为:
对所有子块都能够使用其对应的剩余冗余列进行修复的那些块按照从小到大的排序进行排序,对于多于一个子块的缺陷不能被剩余冗余列的块应当首先保留,不对其进行排序以及后续的优化步骤。
可选的,冗余列进行替换时,从缺陷总数最小且单个子块中的缺陷最小的块开始使用剩余的冗余列进行替换,一旦能够被剩余的冗余列完全修复,该行缺陷将不再使用虚拟冗余行修复。
可选的,还包括行缺陷修复判断的步骤:
使用每个子块剩余的冗余列修复最少缺陷的块,完成该块的修复后,再次按照子块统计剩下的块缺陷的按照子块的缺陷数和剩余的冗余列的数目,如果所有子块剩余冗余列不为0,统计剩下的每个子块缺陷数均不大于该子块剩余冗余列的缺陷块并排序,再次使用该子块剩余的冗余列修复缺陷数最小的块,如果该块不能被完全修复,结束二次修复步骤。
可选的,所述行缺陷修复判断的步骤还包括:
如果能够完全被所有子块剩余的冗余列修复,继续替换下一个缺陷数均不大于该子块剩余冗余列的缺陷块,直到所有子块剩余的冗余列为0、最少缺陷数的块不能被修复或是每个子块缺陷数不大于该子块剩余冗余列的缺陷块被替换完毕。
根据本发明的第二方面:本发明提出一种多子块NAND闪存缺陷的修复方法,包括以下步骤:
步骤S100开始;
步骤S110缺陷数判断:
判断总的缺陷数是否大于虚拟冗余行和冗余列能够修复的范围,如果缺陷数的总和大于能修复的范围,该方法将直接跳到步骤S180;
步骤S120缺陷统计;
步骤S130缺陷排序;
步骤S140列冗余判断;
步骤S150超过冗余列数目缺陷的处理;
步骤S160虚拟冗余行判断:
如果缺陷块的数目超出设定的虚拟冗余行数目,进入步骤S180;
如果判断缺陷块的数目在虚拟冗余行的范围内,进入步骤S170;
步骤S180不可修;
步骤S170可修。
优选的,所述步骤S110缺陷数判断中所述能够修复的范围为:能修复的范围=(子块1冗余列+字块2冗余列)×虚拟冗余行。
优选的,所述步骤S110中:如果NAND闪存不存在缺陷,无需任何步骤,直接将芯片标记为修复完成芯片。
优选的,所述步骤S120缺陷统计为:统计缺陷二维图得到按块和按列分别统计的缺陷数。
优选的,所述步骤S120中:
在统计时:
按块的缺陷统计包含多个子块的缺陷总数;
按列的缺陷统计仅包含该子块的列缺陷。
优选的,所述步骤S130缺陷排序为:仅按照缺陷数目的大小,对S120步骤统计后的块和列综合排序。
优选的,所述步骤S130中综合排序为:不分块和列的优先级;
缺陷数目最大的块或者列排在最前面,最先分配冗余,次最大的依次排列。
优选的,所述步骤S140列冗余判断为:判断当前子块中有缺陷的列的数目是否超过当前子块总的冗余列。
优选的,所述步骤S150超过冗余列数目缺陷的处理为:将超过冗余列的列缺陷统计为块缺陷。
优选的,所述步骤S150中:如果两个子块中的都有超出的列缺陷,总的块缺陷是两个子块超出冗余可修复的缺陷数和原有的块缺陷的总和。
优选的,所述步骤S150中:将超出冗余列数目的列缺陷统计为块缺陷后需要判断缺陷块的数目是否超过设定的虚拟冗余行。
优选的,所述步骤S180不可修为:将该芯片标示为不可修,并结束修复方法。
优选的,所述步骤S170可修为:标示为该芯片能够被所有的冗余修复,所有的冗余包括真实存在的列冗余和虚拟冗余行;
使用冗余列按照从高到低的顺序替换缺陷列并使用虚拟冗余行按照从高到低的顺序替换缺陷块。
与现有技术相比,本发明具有以下优点:
本发明提出的多子块NAND闪存缺陷的修复方法通过提出虚拟冗余行的概念,统计缺陷所在位置的数据行和数据列上的缺陷数目,按照顺序排序,通过这个列表就可以使用冗余来替换这些缺陷块和缺陷列,NAND闪存阵列就可以根据缺陷的位置考虑使用合理的算法来分配冗余。该方法可以明显减少修复算法的次数,减少由于计算带来的测试时间,从而提高测试效率。随着有缺陷的块数据递增,现有技术(例如权重法)在以及比较极端的情况下需要(n为有缺陷的块数)次才能够得到最终的修复结果。本发明的方法需要2m+n次,能够有效减少坏块数目,增加数据存储区的容量。是在多子块NAND闪存产品中的实际应用例。
本发明还提出优化的二次修复步骤,在修复结果的基础上,判断是否还有剩余的冗余列,最终使用虚拟冗余行替换的那些块需要将对应的块标记为坏块,这样对于部分芯片存在稍多的坏块,减少了数据存储区的容量,因此减少虚拟冗余行的使用可以进一步减少坏块的数目,从而增加有效的数据存储空间,能够减少坏块数目。
附图说明
图1为使用权重法修复的结果;
图2虚拟冗余行的NAND闪存阵列示意图;
图3为NAND闪存修复流程图
图4多子块NAND闪存阵列的示意图;
图5(a)~图5(h)为多子块NAND闪存经过综合排序后修复的结果图;
图6为NAND闪存二次优化修复流程图;
图7多子块NAND闪存优化修复的结果图。
具体实施方式
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图2示出了单子块NAND闪存器件增加虚拟冗余行后的概念布局。如图2所示, NAND闪存器件中包括编号为0、1、2、3、…、2047的2048个数据行(这里的数据行也可以理解为数据块)和128个虚拟冗余行,每行包括64页。每页包括2240列,其中包括记录数据的2112个主列和128个冗余列。每个数据列使用存储单元格是以字节为单位来存储数据的。
针对单子块NAND闪存缺陷的修复方法,包括以下步骤:
首先,提出虚拟冗余行的概念,虚拟冗余行即假设在行方向上也有一些多余的行可以用来替换行方向的缺陷,这样NAND闪存阵列就可以根据缺陷的位置考虑使用合理的算法来分配冗余。
其次,统计缺陷所在位置的数据行和数据列上的缺陷数目,按照从高到低的顺序排序,如果缺陷数目相同,优先使用冗余列修复,这样能够保证最大化使用冗余列,当确定使用一条冗余行替换有缺陷的块后,应当去掉这些缺陷再对其他的缺陷进行统计,从而保证同一个缺陷不被重复修复的同时保证了修复的准确性。
然后,经过排序,会得到一组列表,列表中的每一项包含两个数据:缺陷块或者缺陷列的代号以及缺陷的个数。
最后,通过这个列表就可以使用冗余来替换这些缺陷块和缺陷列。最终使用冗余列将缺陷列进行修复,这种替换关系可以作为修复数据写入闪存使得替换生效;对于缺陷块,这里为了方便做修复分析,先使用虚拟冗余行将其替换,然后需要将该缺陷块对应的块的地址写入闪存,将这些缺陷块标记为坏块。
本发明提出一种能够有效解决实际产品包括多个列修复子块(AREA)的修复问题。这些子块有自己独立的列冗余,且只能修复本子块的缺陷,但是坏块必须同时标记多个子块的对应的行地址。该方法包括以下步骤:
首先,按块和列缺陷综合排序时应当注意,块缺陷需要包含多个子块在该行上的所有缺陷,列缺陷需要按照子块分别统计该子块的列上的缺陷数目,因此统计表中缺陷的位置应包含每一个子块中的列缺陷和块缺陷。
然后,按照缺陷的数目进行从高到低的顺序进行排序,排序时应当注意,任意一个子块的列缺陷超过对应子块的冗余列数目时应当将剩余的缺陷统计为块缺陷。
对排序后的块和列缺陷分配冗余,块缺陷使用虚拟冗余行进行替换,同一行包括多个子块的同一个行地址,每个子块使用该子块的冗余列替换该子块的列缺陷。然后对多子块 NAND闪存的修复进行优化,从而有效减少多子块NAND闪存的坏块数。
所述虚拟冗余行是指假设在行方向上有一些多余的行可以用来替换行方向的缺陷。
实施例1
图4给出了多子块(muti-area)NAND闪存器件实施例增加虚拟冗余列的概念布局,包含两个子块,每个子块包含1120个列(column),其中包含1056个数据列和64个冗余列。同时包含2048个块(block)以及128个虚拟冗余行。
多子块NAND闪存器件包括0、1、2、…、2047的2048个块,每个块中包括64页,每页包括2240个列(其中2112数据列和128冗余列),这些列物理上分为多个独立的修复块(2、4、8…),这里实例为两个子块。
子块1中包含1056个数据列和64个冗余列,子块2中包含1056个数据列和64个冗余列,且子块1中列缺陷只能使用子块1中的64个冗余列进行替换,子块2中的列缺陷只能使用子块2中的64个冗余列进行替换,列缺陷不能跨子块替换。对于块缺陷来说不管子块1或者子块2中有块缺陷,两个子块的属于同一个子块的地址会被标记为坏块。注意,以上的所有值只是实例性的,本公开不限于这些特定的值。
多子块NAND闪存修复的方法开始于步骤S100,结束于步骤S250。
步骤S100开始:
S100中,测试多子块NAND闪存器件找到包含缺陷的存储单元格的所有块和列,如图5(a)所示将有缺陷的存储单元格被标示为“X”,形成缺陷二维图,按块统计应包含所有列中的缺陷。
应当注意,为了简化描述,图5(a)实例中出示了NAND闪存的简化器件,其中每个子块中只包括由从0到F的十六进制的编号的16个数据列和0到4编号的5个冗余列。每列中包括由0到7的8个数据块和3个虚拟冗余行,这些冗余行也包含两个子块的所有数据列。
步骤S110缺陷数判断:
具体为:步骤S110会判断总的缺陷数是否大于虚拟冗余行和冗余列能够修复的范围,能修复的范围=(子块1冗余列+字块2冗余列)×虚拟冗余行,如果缺陷数的总和大于两者的乘积,该方法将直接跳到步骤S180,此芯片被表示为不可修芯片。除此之外,如果NAND闪存不存在缺陷,无需任何步骤,直接将芯片标记为修复完成芯片,并结束。
步骤S120缺陷统计:
具体为:在步骤S120统计缺陷二维图得到按块(这里的块也可理解为行)和按列分别统计的缺陷数。该步骤在统计时,按块的缺陷统计包含多个子块的缺陷总数,按列的缺陷统计仅包含该子块的列缺陷。
步骤S130缺陷排序:
具体为:在完成S120步骤的缺陷数统计后进行S130步骤的排序,仅按照缺陷数目的大小,对S120步骤统计后的块和列综合排序。应当提出,综合排序即不分块和列的优先级,缺陷数目最大的块或者列排在最前面,最先分配冗余,次最大的依次排列。
步骤S140列冗余判断:
在步骤130完成后会进行到步骤S140,该步骤中会判断当前子块中有缺陷的列的数目是否超过当前子块总的冗余列。
步骤S150超过冗余列数目缺陷的处理:
具体为:该步骤会将超过冗余列的列缺陷统计为块缺陷。
所以一旦某个子块统计中有缺陷的列的数目超过冗余列,该方法进行到S150。如果两个子块中的都有超出的列缺陷,那么总的块缺陷应该是两个子块超出冗余可修复的缺陷数和原有的块缺陷的总和。将超出冗余列数目的列缺陷统计为块缺陷后需要判断缺陷块的数目是否超过设定的虚拟冗余行。
应当注意,虚拟冗余行的数目也是有限制的,理论上为NAND闪存允许的最大的坏块数,因此将超出冗余列数目的列缺陷统计为块缺陷后需要判断缺陷块的数目是否超过设定的虚拟冗余行。
步骤S160虚拟冗余行判断:
即该方法进行到步骤S160,如果缺陷块的数目超出设定的虚拟冗余行数目,将直接进入步骤S180。
步骤S180不可修:
将该芯片标示为不可修,并结束修复方法。如果步骤S160判断缺陷块的数目在虚拟冗余行的范围内,那么该方法将进行到步骤S170。
步骤S170可修:
具体为:步骤S170会标示为该芯片能够被所有的冗余修复,所有的冗余包括真实存在的列冗余和虚拟冗余行。
使用冗余列按照从高到低的顺序替换缺陷列并使用虚拟冗余行按照从高到低的顺序替换缺陷块。
本方法进一步提出对多子块NAND阵列修复的优化,需要按照子块统计剩余的冗余列数目和对块缺陷需要按照子块中缺陷数从小到大的顺序进行统计。这次统计需要按子块来单独统计,这样每个块缺陷需要与该块对应的多个子块的缺陷数以及多个子块的剩余的冗余列的数目。对于每个子块中的缺陷数都不多于该子块剩余的冗余列的块进行排序,排序时按照子块的缺陷数目从小到大的顺序进行,某一个子块具有最小的缺陷数目,将其排在最前面。
并首先使用每个子块剩余的冗余列修复最少缺陷的块,完成该块的修复后,再次按照子块统计剩下的块缺陷的按照子块的缺陷数和剩余的冗余列的数目。
如果所有子块剩余冗余列不为0,统计剩下的每个子块缺陷数均不大于该子块剩余冗余列的缺陷块并排序,再次使用该子块剩余的冗余列修复缺陷数最小的块,如果该块不能被完全修复,结束;
如果能够完全被所有子块剩余的冗余列修复,继续替换下一个缺陷数均不大于该子块剩余冗余列的缺陷块,直到所有子块剩余的冗余列为0、最少缺陷数的块不能被修复或是每个子块缺陷数不大于该子块剩余冗余列的缺陷块被替换完毕。
最终使用冗余列将缺陷列进行修复,这种替换关系可以作为修复数据写入闪存使得替换生效;对于缺陷块,这里为了方便做修复分析,先使用虚拟冗余行将其替换,然后需要将该缺陷块对应的块的地址写入闪存,将这些缺陷块标记为坏块。
为了能够更好理解该方法,如图5(a)-图5(h)所示,闪存器件中按块统计有6个块中有缺陷的单元格,按列统计有11个列中有缺陷的单元格。
按照块统计:
对于块0,其数据列0、1包含有缺陷的单元格;
对于块1,其数据列2包含有缺陷的单元格…。
说明这里的块即为图中的行。
按照列统计:
对于子块1列0,其块0、3和5有缺陷的单元格,
对于子块1列1,块0有缺陷的单元格…。
对于子块2列3,块5有缺陷的单元格,
对于子块2列4,块4有缺陷的单元格…。
表2为图5所示的NAND闪存缺陷按照综合排序后的统计表,表中的第一列标示出缺陷所在的位置属于那个子块的列缺陷还是块缺陷,第二列为综合排序的缺陷数,第三列为应该使用那个冗余对其进行替换。统计后并综合排序后:
子块1的列0(Col1-0)包含3个缺陷单元格,
子块1列2(Col1-2)包含3个缺陷单元格,
行4(Row4)包含3个缺陷单元格,
子块2列6(Col2-6)包含2个缺陷单元格…。
表2多子块NAND缺陷统计表
缺陷行或列 | 缺陷数 | 冗余行或列 |
Col1-0 | 3 | CR1-0 |
Col1-2 | 3 | CR1-1 |
Row4 | 3 | RR0 |
Col2-6 | 2 | CR2-0 |
Col2-8 | 2 | CR2-1 |
Row3 | 2 | RR1 |
Col2-3 | 1 | CR2-3 |
Col1-1 | 1 | CR1-2 |
然后分配冗余修复这些缺陷:
使用子块1的冗余列0(CR1-0)修复子块1的列0(Col1-0)的缺陷单元格,
使用子块1的冗余列1(CR1-0)修复子块1列2(Col1-2)的缺陷单元格,
使用虚拟冗余行0(RR0)修复行4(Row4)的缺陷单元格,
使用子块2的列冗余0(CR2-0)修复子块2列6(Col2-6)的缺陷单元格…。
图5(a)至图5(h)为实施例1按表2使用冗余进行替换的过程,最终得到完全修复的芯片。并将冗余列的替换关系写入芯片保证行方向的替换真实生效,将行缺陷标记为坏块。
实施例2
步骤S170开始:
如图6,在进行到步骤S170,已经得到了可用的修复方案,但是缺陷块的数目不是最少的,这样就会造成一些块被标记成坏块从而被浪费,该方法需要对实施例1得到的结果进行优化。
步骤S200判断冗余列:
具体为:步骤S200会判断每个子块的冗余列是否用完,即判断每个子块中剩余的冗余列的数目是否为0。在此步骤中,如果所有子块的冗余列已经被用完,那么说明已经得到了最终的修复结果并不需要对其进行优化,该流程直接进行到步骤S250,结束该流程;
如果至少有一个子块有剩余的冗余列,得到每个子块剩余的冗余列的数目,当前子块剩余冗余列的数目=当前子块总冗余数目-当前子块已经使用的冗余列的数目。
如表3第三列所示,应当确定,计算每个子块剩余冗余列的数目,是为了判断当前子块中哪些块缺陷能够被修复(缺陷块中在当前子块中缺陷数少于当前子块剩余冗余列的块可以被修复,多于当前子块剩余冗余列的缺陷块不可修复),只有在所有的子块中都能被当前子块中剩余的冗余列修复的那些缺陷块可以被判断为可修复,从而减少优化次数。
步骤S210行缺陷统计:
然后该方法进行到步骤S210,该步骤对已经得出的修复方案中那些被冗余行修复的那些块的缺陷数再次按子块进行统计,在统计的过程中去掉那些已经被冗余列修复的那些缺陷。
步骤S220行缺陷排序:
该方法进行到步骤S220,对那些所有子块都能够使用其对应的剩余冗余列进行修复的那些块按照从小到大的排序进行排序,对于多于一个子块的缺陷不能被剩余冗余列的块应当首先保留,不对其进行排序以及后续的优化步骤。这里的排序应当注意,仅需要按照当前块缺陷中的缺陷总数和单个子块中当前块的缺陷数进行综合排序,如果缺陷总数最小且单个子块中的缺陷最小,应首先对该子块进行替换。
步骤S230冗余列修复行缺陷:
该方法进行到步骤230,该方法使用剩余的冗余列修复缺陷数最少的行缺陷,一旦能够被剩余的冗余列完全修复,该行缺陷将不再使用虚拟冗余行修复,应当释放该虚拟冗余行。
步骤S240行缺陷修复判断:
最后进行步骤S240,从排序后的缺陷数最少的块开始,判断本块中的每个子块是否可以被其剩余的冗余列进行完全替换,如果本块中某个子块中缺陷数多于其对应子块剩余的冗余列的数目,那么说明本缺陷块不能被剩余的冗余列完全修复,当结束该方法,进行到步骤S250。
如果该缺陷块中的所有子块中缺陷数均不大于其对应子块剩余的冗余列的数目,应当分别使用每个子块剩余冗余列首先替换该缺陷块中的对应子块所有缺陷,然后重新计算每个子块剩余的冗余列的数目,这里单个子块剩余冗余列的数目‘=单个子块剩余冗余列的数目-单个子块替换使用的剩余列的数目。计算单个子块剩余冗余列的数目’后,重复步骤S200到步骤S240,直到缺陷块中某个子块不能被其对应子块剩余冗余列完全替换或者所有子块剩余冗余列的数目为0为止。
表3多子块NAND的优化统计表
为了能够更好理解二次修复,图7为实施例1的优化结果。
首先将使用虚拟冗余行替换的缺陷块分别按照子块统计缺陷数以及每个子块剩余的冗余列数,本例表3中行3、4在子块1和2中都剩余2个冗余列,且两行中的每个子块的缺陷数都不多于剩余的冗余列数,因此按照缺陷数最少以及单个子块中缺陷数最少的块进行替换,缺陷块3的子块1中两个剩余冗余列替换其对应子块的两个缺陷,替换行3 后子块1剩余的列冗余为0,因此在行4的替换时不能继续替换,行4仍然保留使用虚拟冗余行修复。最后,缺陷列使用冗余列替换的对应关系作为最终的修复方案写入NAND 闪存中,并在闪存再次重启后使这种替换真实生效。除此之外使用冗余行替换的那些缺陷块最终标记成坏块,将坏块的地址写入NAND闪存中,并保证用户不会使用这些坏块。
尽管以上结合附图对本发明的具体实施方案进行了描述,但本发明并不局限于上述的具体实施方案,上述的具体实施方案仅仅是示意性的、指导性的、而不是限制性的。本领域的普通技术人员在本说明书的启示下,在不脱离本发明的权利要求所保护的范围的情况下,还可以做出很多种的形式,这些均属于本发明保护之列。
Claims (29)
1.一种多子块NAND闪存缺陷的修复方法,其特征在于,包括以下步骤:
测试多子块NAND闪存器件找到包含缺陷的存储单元格的所有块和列,统计缺陷所在位置的数据行和数据列上的缺陷数目;块缺陷是指按行来统计的子块的缺陷;
对块缺陷和列缺陷的排序是根据缺陷数目由大到小的顺序进行综合排序;
按照所述缺陷数的顺序进行修复:
使用冗余列替换对应的缺陷列;
对缺陷块先使用虚拟冗余行将其替换,同一行包括多个子块的同一个行地址,每个子块使用该子块的冗余列替换该子块的列缺陷。
2.根据权利要求1所述的多子块NAND闪存缺陷的修复方法,其特征在于,统计缺陷数目时还包括缺陷数判断步骤:
判断总的缺陷数是否大于虚拟冗余行和冗余列能够修复的范围:
如是,则不可修复;如否,则判断为可修复,再进行修复。
3.根据权利要求2所述的多子块NAND闪存缺陷的修复方法,其特征在于,
所述能修复的范围=(子块1冗余列+子块2冗余列)×虚拟冗余行。
4.根据权利要求1所述的多子块NAND闪存缺陷的修复方法,其特征在于,
块缺陷包含多个子块在该行上的所有缺陷总数,列缺陷需要按照子块分别统计该子块的列上的缺陷数目。
5.根据权利要求1所述的多子块NAND闪存缺陷的修复方法,其特征在于,
缺陷数排序时,不分块和列的优先级,缺陷数目最大的块或者列排在最前面,最先分配冗余,次最大的依次排列。
6.根据权利要求1所述的多子块NAND闪存缺陷的修复方法,其特征在于,使用冗余列来替换缺陷列之前还包括列冗余判断步骤:
判断有缺陷列的数目是否超过冗余列:
如是,将超过冗余列数目的缺陷列统计为块缺陷;
如否,对块缺陷的个数是否超过虚拟冗余行进行判断:
如是,则不可修复;如否,则判断为可修复。
7.根据权利要求6所述的多子块NAND闪存缺陷的修复方法,其特征在于,
如果多个子块中的都有超出的列缺陷,则总的块缺陷是多个子块超出冗余可修复的缺陷数和原有的块缺陷的总和。
8.根据权利要求1所述的多子块NAND闪存缺陷的修复方法,其特征在于,
按照缺陷数目对缺陷块以及缺陷列进行顺序排序时,任意一个子块的列缺陷超过对应子块的冗余列数目时应当将剩余的缺陷统计为块缺陷。
9.根据权利要求1所述的多子块NAND闪存缺陷的修复方法,其特征在于,
对冗余列修复的缺陷列,作为修复数据写入闪存使得替换生效;
对使用虚拟冗余行替换的缺陷块,将该缺陷块对应的块的地址写入闪存,并将缺陷块标记为坏块。
10.根据权利要求1所述的多子块NAND闪存缺陷的修复方法,其特征在于,还包括二次修复步骤:
在上述修复结果的基础上,判断每个子块中剩余冗余列数量,对缺陷数不大于剩余冗余列的缺陷块按照缺陷数从小到大的顺序进行排序;
从缺陷数目最少的块开始使用剩余的冗余列进行替换进行二次修复。
11.根据权利要求10所述的多子块NAND闪存缺陷的修复方法,其特征在于,统计剩余冗余列数量之前还包括判断冗余列步骤:
判断是否还有剩余的冗余列;
如否,则无法继续优化;
如是,则可进行二次修复。
12.根据权利要求10所述的多子块NAND闪存缺陷的修复方法,其特征在于,还包括行缺陷统计的步骤:
对之前被冗余行修复的块的缺陷数再次按子块进行统计,在统计时去掉已经被冗余列修复的缺陷。
13.根据权利要求10所述的多子块NAND闪存缺陷的修复方法,其特征在于,缺陷行排序具体步骤为:
对所有子块都能够使用其对应的剩余冗余列进行修复的那些块按照从小到大的排序进行排序,对于多于一个子块不能被剩余冗余列进行修复的块应当首先保留,不对其进行排序以及后续的优化步骤。
14.根据权利要求10所述的多子块NAND闪存缺陷的修复方法,其特征在于,
冗余列进行替换时,从缺陷总数最小且单个子块中的缺陷最小的块开始使用剩余的冗余列进行替换,一旦能够被剩余的冗余列完全修复,该行缺陷将不再使用虚拟冗余行修复。
15.根据权利要求10所述的多子块NAND闪存缺陷的修复方法,其特征在于,还包括行缺陷修复判断的步骤:
使用每个子块剩余的冗余列修复最少缺陷的块,完成该块的修复后,再次按照子块统计剩下的块缺陷的按照子块的缺陷数和剩余的冗余列的数目,如果所有子块剩余冗余列不为0,统计剩下的每个子块缺陷数均不大于该子块剩余冗余列的缺陷块并排序,再次使用该子块剩余的冗余列修复缺陷数最小的块,如果该块不能被完全修复,结束二次修复步骤。
16.根据权利要求15所述的多子块NAND闪存缺陷的修复方法,其特征在于,所述行缺陷修复判断的步骤还包括:
如果能够完全被所有子块剩余的冗余列修复,继续替换下一个缺陷数均不大于该子块剩余冗余列的缺陷块,直到所有子块剩余的冗余列为0、最少缺陷数的块不能被修复或是每个子块缺陷数不大于该子块剩余冗余列的缺陷块被替换完毕。
17.一种多子块NAND闪存缺陷的修复方法,其特征在于,包括以下步骤:
步骤S100开始;
步骤S110缺陷数判断:
判断总的缺陷数是否大于虚拟冗余行和冗余列能够修复的范围,如果缺陷数的总和大于能修复的范围,该方法将直接跳到步骤S180;
步骤S120缺陷统计;统计缺陷所在位置的数据行和数据列上的缺陷数目;块缺陷是指按行来统计的子块的缺陷;
步骤S130缺陷排序;对块缺陷和列缺陷的排序是根据缺陷数目由大到小的顺序进行排序;
步骤S140列冗余判断;
步骤S150超过冗余列数目缺陷的处理;
步骤S160虚拟冗余行判断:
如果缺陷块的数目超出设定的虚拟冗余行数目,进入步骤S180;
如果判断缺陷块的数目在虚拟冗余行的范围内,进入步骤S170;
步骤S180不可修;
步骤S170可修。
18.根据权利要求17所述的一种多子块NAND闪存缺陷的修复方法,其特征在于,所述步骤S110缺陷数判断中所述能够修复的范围为:
能修复的范围=(子块1冗余列+子块2冗余列)×虚拟冗余行。
19.根据权利要求17所述的一种多子块NAND闪存缺陷的修复方法,其特征在于,所述步骤S110中:
如果NAND闪存不存在缺陷,无需任何步骤,直接将芯片标记为修复完成芯片。
20.根据权利要求17所述的一种多子块NAND闪存缺陷的修复方法,其特征在于,所述步骤S120缺陷统计为:
统计缺陷二维图得到按块和按列分别统计的缺陷数。
21.根据权利要求20所述的一种多子块NAND闪存缺陷的修复方法,其特征在于,所述步骤S120中:
在统计时:
按块的缺陷统计包含多个子块的缺陷总数;
按列的缺陷统计仅包含该子块的列缺陷。
22.根据权利要求17所述的一种多子块NAND闪存缺陷的修复方法,其特征在于,所述步骤S130缺陷排序为:
仅按照缺陷数目的大小,对S120步骤统计后的块和列综合排序。
23.根据权利要求22所述的一种多子块NAND闪存缺陷的修复方法,其特征在于:
所述步骤S130中综合排序为:不分块和列的优先级;
缺陷数目最大的块或者列排在最前面,最先分配冗余,次最大的依次排列。
24.根据权利要求17所述的一种多子块NAND闪存缺陷的修复方法,其特征在于,所述步骤S140列冗余判断为:
判断当前子块中有缺陷的列的数目是否超过当前子块总的冗余列。
25.根据权利要求17所述的一种多子块NAND闪存缺陷的修复方法,其特征在于,所述步骤S150超过冗余列数目缺陷的处理为:
将超过冗余列的列缺陷统计为块缺陷。
26.根据权利要求25所述的一种多子块NAND闪存缺陷的修复方法,其特征在于,所述步骤S150中:
如果两个子块中的都有超出的列缺陷,总的块缺陷是两个子块超出冗余可修复的缺陷数和原有的块缺陷的总和。
27.根据权利要求26所述的一种多子块NAND闪存缺陷的修复方法,其特征在于,所述步骤S150中:
将超出冗余列数目的列缺陷统计为块缺陷后需要判断缺陷块的数目是否超过设定的虚拟冗余行。
28.根据权利要求19所述的一种多子块NAND闪存缺陷的修复方法,其特征在于,所述步骤S180不可修为:
将所述芯片标示为不可修,并结束修复方法。
29.根据权利要求19所述的一种多子块NAND闪存缺陷的修复方法,其特征在于,所述步骤S170可修为:
标示为所述芯片能够被所有的冗余修复,所有的冗余包括真实存在的列冗余和虚拟冗余行;
使用冗余列按照从高到低的顺序替换缺陷列并使用虚拟冗余行按照从高到低的顺序替换缺陷块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911052876.XA CN110797071B (zh) | 2019-10-31 | 2019-10-31 | 一种多子块nand闪存缺陷的修复方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911052876.XA CN110797071B (zh) | 2019-10-31 | 2019-10-31 | 一种多子块nand闪存缺陷的修复方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110797071A CN110797071A (zh) | 2020-02-14 |
CN110797071B true CN110797071B (zh) | 2021-10-22 |
Family
ID=69440802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911052876.XA Active CN110797071B (zh) | 2019-10-31 | 2019-10-31 | 一种多子块nand闪存缺陷的修复方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110797071B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114078564B (zh) * | 2020-08-18 | 2023-09-12 | 长鑫存储技术有限公司 | 失效位元的修补方法及装置 |
EP3985675B1 (en) | 2020-08-18 | 2024-01-31 | Changxin Memory Technologies, Inc. | Method and device for repairing fail bits |
US11791010B2 (en) | 2020-08-18 | 2023-10-17 | Changxin Memory Technologies, Inc. | Method and device for fail bit repairing |
US11797371B2 (en) | 2020-08-18 | 2023-10-24 | Changxin Memory Technologies, Inc. | Method and device for determining fail bit repair scheme |
US11887685B2 (en) | 2020-08-18 | 2024-01-30 | Changxin Memory Technologies, Inc. | Fail Bit repair method and device |
US11984179B2 (en) | 2021-03-26 | 2024-05-14 | Changxin Memory Technologies, Inc. | Redundant circuit assigning method and device, and medium |
US11791012B2 (en) | 2021-03-31 | 2023-10-17 | Changxin Memory Technologies, Inc. | Standby circuit dispatch method, apparatus, device and medium |
US11881278B2 (en) | 2021-03-31 | 2024-01-23 | Changxin Memory Technologies, Inc. | Redundant circuit assigning method and device, apparatus and medium |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6067259A (en) * | 1997-06-10 | 2000-05-23 | Kabushiki Kaisha Toshiba | Method and device for repairing arrays with redundancy |
CN1467740A (zh) * | 2002-06-04 | 2004-01-14 | 三菱电机株式会社 | 具有冗余结构的薄膜磁介质存储装置 |
CN1708742A (zh) * | 2002-01-23 | 2005-12-14 | 思科技术公司 | 在存储区域网中实现存储虚拟化的方法与装置 |
US7200786B2 (en) * | 2003-04-15 | 2007-04-03 | Wu-Tung Cheng | Built-in self-analyzer for embedded memory |
CN104835525A (zh) * | 2014-02-07 | 2015-08-12 | 爱思开海力士有限公司 | 半导体存储器件和包括半导体存储器件的存储系统 |
US9558028B2 (en) * | 2015-01-14 | 2017-01-31 | Dell Products L.P. | Systems and methods for migration of virtual machines across virtual storage resources |
CN107590031A (zh) * | 2016-07-07 | 2018-01-16 | 高丽大学校产学协力团 | 存储器管理系统及其方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020108073A1 (en) * | 2001-02-02 | 2002-08-08 | Hughes Brian William | System for and method of operating a programmable column fail counter for redundancy allocation |
TW594775B (en) * | 2001-06-04 | 2004-06-21 | Toshiba Corp | Semiconductor memory device |
JP2010092200A (ja) * | 2008-10-07 | 2010-04-22 | Tdk Corp | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
-
2019
- 2019-10-31 CN CN201911052876.XA patent/CN110797071B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6067259A (en) * | 1997-06-10 | 2000-05-23 | Kabushiki Kaisha Toshiba | Method and device for repairing arrays with redundancy |
CN1708742A (zh) * | 2002-01-23 | 2005-12-14 | 思科技术公司 | 在存储区域网中实现存储虚拟化的方法与装置 |
CN1467740A (zh) * | 2002-06-04 | 2004-01-14 | 三菱电机株式会社 | 具有冗余结构的薄膜磁介质存储装置 |
US7200786B2 (en) * | 2003-04-15 | 2007-04-03 | Wu-Tung Cheng | Built-in self-analyzer for embedded memory |
CN104835525A (zh) * | 2014-02-07 | 2015-08-12 | 爱思开海力士有限公司 | 半导体存储器件和包括半导体存储器件的存储系统 |
US9558028B2 (en) * | 2015-01-14 | 2017-01-31 | Dell Products L.P. | Systems and methods for migration of virtual machines across virtual storage resources |
CN107590031A (zh) * | 2016-07-07 | 2018-01-16 | 高丽大学校产学协力团 | 存储器管理系统及其方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110797071A (zh) | 2020-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110797071B (zh) | 一种多子块nand闪存缺陷的修复方法 | |
JP3581249B2 (ja) | 半導体不良ビット救済処理方法及び半導体不良ビット救済処理装置 | |
CN110797072B (zh) | 一种dram芯片修复方法 | |
US8621264B2 (en) | Backup line allocation apparatus, memory repairing apparatus, backup line allocation method, memory manufacturing method, and recording medium | |
CN110853694B (zh) | 一种nand闪存缺陷的修复方法 | |
CN105097045B (zh) | 用于nand闪存器件中的缺陷修复的方法和装置 | |
US20040088663A1 (en) | Placement processing for programmable logic devices | |
CN112085644B (zh) | 多列数据排序方法、装置、可读存储介质和电子设备 | |
CN107590031B (zh) | 存储器管理系统及其方法 | |
CN110738019A (zh) | 一种利用负载单元自动结群修复时序违反的方法及装置 | |
US6745370B1 (en) | Method for selecting an optimal level of redundancy in the design of memories | |
US6904584B2 (en) | Method and system for placing logic nodes based on an estimated wiring congestion | |
CN113223604A (zh) | 用于存储器修复的方法、系统及计算机编程产品 | |
CN104700435A (zh) | 一种利用oasis图形阵列压缩版图数据的方法 | |
CN107104829B (zh) | 一种基于网络拓扑数据的物理设备匹配分配方法及装置 | |
CN114078564B (zh) | 失效位元的修补方法及装置 | |
CN114171103A (zh) | 失效位元的修补方案的确定方法 | |
CN113254257A (zh) | 数据存储媒体的损坏数据列的筛选方法 | |
CN112559254B (zh) | 备份文件的保留方法、装置、电子设备和存储介质 | |
Park et al. | Repair of memory arrays by cutting | |
US12046319B2 (en) | Redundancy managing method and apparatus for semiconductor memories | |
JP2000339992A (ja) | 半導体試験装置 | |
CN118114610A (zh) | 一种时序违例修复方法、装置、设备及可读存储介质 | |
Koren et al. | Analysis of a hybrid defect-tolerance scheme for high-density memory ICs | |
JP2008033518A (ja) | 最適解探索システム、およびそれに用いられるサーバ、最適解探索プログラム、記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |