一种提供冗余位线的方法和装置
技术领域
本发明涉及存储技术领域,特别是涉及一种提供冗余位线的方法和一种提供冗余位线的装置。
背景技术
NAND FLASH(闪存)是一种非易失性存储器,具有存储容量大,单位容量成本低等优点,被广泛应用于各种电子产品中。
NAND FLASH在制造过程中会出现有缺陷的BL(Bit Line,位线),现有技术在NANDFLASH中增加冗余阵列,冗余阵列中的BL在正常情况下不使用,只在主存储阵列中出现有缺陷的BL时,通过冗余阵列中的BL替换有缺陷的BL,以增加产品的良率。
现有技术中的位线替换方案还存在以下缺陷:在主存储阵列中有缺陷的BL被冗余阵列中的BL替换后,若该主存储阵列中的BL仍有缺陷,即在替换后冗余阵列中BL也出现缺陷则,此时NAND FLASH无法正常使用,只能废弃,导致NAND FLASH产品的良率仍然很低。
发明内容
鉴于上述问题,本发明实施例的目的在于提供一种提供冗余位线的方法和相应的一种提供冗余位线的装置,以解决现有技术中在替换后冗余阵列中BL出现缺陷时,NANDFLASH无法正常使用的问题。
为了解决上述问题,本发明实施例公开了一种提供冗余位线的方法,应用于包括主存储阵列和冗余阵列的NAND FLASH,包括:
在所述冗余阵列中第一位线替换所述主存储阵列中有缺陷的第二位线预设时间后,检测所述第二位线是否有缺陷;
如果是,用所述冗余阵列中没有缺陷且未被使用的第三位线替换所述第二位线。
可选地,所述用所述冗余阵列中没有缺陷且未被使用的第三位线替换所述第二位线,包括:
根据所述第三位线的COL地址中缺陷标志位来判断所述第三位线是否没有缺陷,以及根据所述第三位线的COL地址中使用标志位来判断所述第三位线是否未被使用;
当所述第三位线的COL地址中缺陷标志位为无效时,确定所述第三位线没有缺陷;
当所述第三位线的COL地址中使用标志位为无效时,确定所述第三位线未被使用。
可选地,在所述用所述冗余阵列中没有缺陷且未被使用的第三位线替换所述第二位线之后,方法还包括:
设置所述第三位线的COL地址中缺陷标志位为无效,以及设置所述第三位线的COL地址中使用标志位为有效。
可选地,所述用所述冗余阵列中没有缺陷且未被使用的第三位线替换所述第二位线,包括:
将所述第一位线对应寄存器存储的COL地址写入所述第三位线对应的寄存器;
禁用所述第一位线。
可选地,所述禁用所述第一位线,包括:
设置所述第一位线的COL地址中缺陷标志位为有效。
本发明实施例的提供冗余位线的方法包括以下优点:在冗余阵列中第一位线替换主存储阵列中有缺陷的第二位线预设时间后,检测第二位线是否有缺陷,如果第二位线有缺陷,则用冗余阵列中没有缺陷且未被使用的第三位线替换第二位线。这样,即便第一位线替换第二位线预设时间后,第二位线出现缺陷,即第一位线出现缺陷,通过没有缺陷且未被使用的第三位线替换第二位线后,NAND FLASH仍然可以作为合格产品继续正常使用,因此,本发明实施例的提供冗余位线的方法可以极大提高NAND FLASH的产品良率。
为了解决上述问题,本发明实施例还公开了一种提供冗余位线的装置,应用于包括主存储阵列和冗余阵列的NAND FLASH,包括:
检测模块,用于在所述冗余阵列中第一位线替换所述主存储阵列中有缺陷的第二位线预设时间后,检测所述第二位线是否有缺陷;
替换模块,用于在所述第二位线有缺陷时,用所述冗余阵列中没有缺陷且未被使用的第三位线替换所述第二位线。
可选地,所述替换模块包括:
判断子模块,用于根据所述第三位线的COL地址中缺陷标志位来判断所述第三位线是否没有缺陷,以及根据所述第三位线的COL地址中使用标志位来判断所述第三位线是否未被使用;
第一确定子模块,用于当所述第三位线的COL地址中缺陷标志位为无效时,确定所述第三位线没有缺陷;
第二确定子模块,用于当所述第三位线的COL地址中使用标志位为无效时,确定所述第三位线未被使用。
可选地,在所述替换模块之后,装置还包括:
设置模块,用于设置所述第三位线的COL地址中缺陷标志位为无效,以及设置所述第三位线的COL地址中使用标志位为有效。
可选地,所述替换模块包括:
地址写入子模块,用于将所述第一位线对应寄存器存储的COL地址写入所述第三位线对应的寄存器;
禁用模块,用于禁用所述第一位线。
可选地,所述禁用模块包括:
设置子模块,用于设置所述第一位线的COL地址中缺陷标志位为有效。
本发明实施例的提供冗余位线的装置包括以下优点:在冗余阵列中第一位线替换主存储阵列中有缺陷的第二位线预设时间后,通过检测模块检测第二位线是否有缺陷,如果检测模块检测第二位线有缺陷,则替换模块用冗余阵列中没有缺陷且未被使用的第三位线替换第二位线。这样,即便第一位线替换第二位线预设时间后,第二位线出现缺陷,即第一位线出现缺陷,通过没有缺陷且未被使用的第三位线替换第二位线后,NAND FLASH仍然可以作为合格产品继续正常使用,因此,本发明实施例的提供冗余位线的方法可以极大提高NAND FLASH的产品良率。
附图说明
图1是本发明的一种提供冗余位线的方法实施例的步骤流程图;
图2是本发明的一种提供冗余位线的方法具体实施例的步骤流程图;
图3是本发明的一种提供冗余位线的装置实施例的结构框图;
图4是本发明的一种提供冗余位线的装置具体实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,其示出了本发明的一种提供冗余位线的方法实施例的步骤流程图,该提供冗余位线的方法可以应用于包括主存储阵列和冗余阵列的NAND FLASH,具体可以包括如下步骤:
S1,在冗余阵列中第一位线替换主存储阵列中有缺陷的第二位线预设时间后,检测第二位线是否有缺陷。
其中,第二位线可以为主存储阵列中任一位线,预设时间可以为大于0的时间,预设时间可以根据实际情况进行设置,例如,可以将冗余阵列中位线替换主存储阵列中有缺陷的位线后,主存储阵列中位线出现缺陷概率最高的时间,作为预设时间。
具体地,冗余阵列中第一位线替换主存储阵列中有缺陷的第二位线可以采用现有技术中的替换方式实现,本发明实施例对此不做限制。
具体地,步骤S1检测主存储阵列中第二位线是否有缺陷,可以为步骤S1检测第二位线对应的存储单元能否正确执行数据操作(读操作、写操作和擦除操作中的至少一种操作)。其中,当第二位线对应的存储单元无法正确执行数据操作,则步骤S1检测第二位线有缺陷;当第二位线对应的存储单元能够正确执行数据操作,则步骤S1检测第二位线没有缺陷。
具体地,当第二位线出现短接或断开等情况时,第二位线对应的存储单元无法正确执行数据操作。
由于第一位线替换了第二位线,第二位线与第一位线具有对应关系,若访问第二位线,则将第二位线的COL地址逻辑映射到第一位线的COL地址。因此,步骤S1检测主存储阵列中第二位线是否有缺陷,实质为步骤S1检测第一位线是否有缺陷。
S2,如果是,用冗余阵列中没有缺陷且未被使用的第三位线替换第二位线。
其中,步骤S2可以通过遍历冗余阵列来查找第三位线。
在步骤S2后,NAND FLASH仍然可以作为合格产品继续正常使用,因此,本发明实施例的提供冗余位线的方法可以极大提高NAND FLASH的产品良率。
可选地,在本发明的一个具体实施例中,参照图2,步骤S2用冗余阵列中没有缺陷且未被使用的第三位线替换第二位线,可以包括:
S21,根据第三位线的COL地址中缺陷标志位来判断第三位线是否没有缺陷,以及根据第三位线的COL地址中使用标志位来判断第三位线是否未被使用。
S22,当第三位线的COL地址中缺陷标志位为无效时,确定第三位线没有缺陷。
另外,当第三位线的COL地址中缺陷标志位为有效时,确定第三位线有缺陷。
S23,当第三位线的COL地址中使用标志位为无效时,确定第三位线未被使用。
另外,当第三位线的COL地址中使用标志位为有效时,确定第三位线已被使用。
可选地,在本发明的一个具体实施例中,参照图2,在步骤S2用冗余阵列中没有缺陷且未被使用的第三位线替换第二位线之后,方法还可以包括:
S3,设置第三位线的COL地址中缺陷标志位为无效,以及设置第三位线的COL地址中使用标志位为有效。
其中,步骤S3设置第三位线的COL地址中缺陷标志位为无效,可以标记第三位线没有缺陷。另外,通过步骤S3,可以标记第三位线被使用,避免第三位线重复使用。例如,当主存储阵列中第四位线有缺陷,在冗余阵列中第五位线替换主存储阵列中有缺陷的第四位线预设时间后,步骤S1检测第四位线有缺陷,即第五位线出现缺陷,通过步骤S3,第三位线将不会用于替换第四位线。
可选地,在本发明的一个具体实施例中,参照图2,步骤S2用冗余阵列中没有缺陷且未被使用的第三位线替换第二位线,可以包括:
S24,将所述第一位线对应寄存器存储的COL地址写入所述第三位线对应的寄存器。
具体地,步骤S24可以将第一位线的COL地址搬移到第三位线的寄存器中,使第一位线的COL地址作为第三位线的COL地址。
通过步骤S24,第三位线与第二位线具有对应关系,若访问第二位线,则将第三位线的COL地址逻辑映射到第二位线的COL地址。
S25,禁用第一位线。
其中,步骤S25禁用第一位线,可以使得在访问第二位线时,只会将第三位线的COL地址逻辑映射到第二位线的COL地址,而不会继续将第二位线的COL地址逻辑映射到第一位线的COL地址,避免错误的访问第一位线。
可选地,在本发明的一个具体实施例中,参照图2,步骤S25禁用第一位线可以包括:
S251,设置第一位线的COL地址中缺陷标志位为有效。
本发明实施例的提供冗余位线的方法包括以下优点:在冗余阵列中第一位线替换主存储阵列中有缺陷的第二位线预设时间后,检测第二位线是否有缺陷,如果第二位线有缺陷,则用冗余阵列中没有缺陷且未被使用的第三位线替换第二位线,同时设置第三位线的COL地址中缺陷标志位为无效,设置第三位线的COL地址中使用标志位为有效,设置第一位线的COL地址中缺陷标志位为有效。这样,即便第一位线替换第二位线预设时间后,第二位线出现缺陷,即第一位线出现缺陷,通过没有缺陷且未被使用的第三位线替换第二位线后,NAND FLASH仍然可以作为合格产品继续正常使用,因此,本发明实施例的提供冗余位线的方法可以极大提高NAND FLASH的产品良率。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图3,其示出了本发明的一种提供冗余位线的装置实施例的结构框图,该提供冗余位线的装置可以应用于包括主存储阵列和冗余阵列的NAND FLASH,具体可以包括如下模块:
检测模块1,用于在冗余阵列中第一位线替换主存储阵列中有缺陷的第二位线预设时间后,检测第二位线是否有缺陷。
替换模块2,用于在第二位线有缺陷时,用冗余阵列中没有缺陷且未被使用的第三位线替换第二位线。
可选地,在本发明的一个具体实施例中,参照图4,替换模块2可以包括:
判断子模块21,用于根据第三位线的COL地址中缺陷标志位来判断第三位线是否没有缺陷,以及根据第三位线的COL地址中使用标志位来判断第三位线是否未被使用。
第一确定子模块22,用于当第三位线的COL地址中缺陷标志位为无效时,确定第三位线没有缺陷。
第二确定子模块23,用于当第三位线的COL地址中使用标志位为无效时,确定第三位线未被使用。
可选地,在本发明的一个具体实施例中,参照图4,在替换模块2之后,装置还可以包括:
设置模块3,用于设置第三位线的COL地址中缺陷标志位为无效,以及设置第三位线的COL地址中使用标志位为有效。
可选地,在本发明的一个具体实施例中,参照图4,替换模块2可以包括:
地址写入子模块24,用于将所述第一位线对应寄存器存储的COL地址写入所述第三位线对应的寄存器。
禁用模块25,用于禁用第一位线。
可选地,在本发明的一个具体实施例中,参照图4,禁用模块25可以包括:
设置子模块251,用于设置第一位线的COL地址中缺陷标志位为有效。
本发明实施例的提供冗余位线的装置包括以下优点:在冗余阵列中第一位线替换主存储阵列中有缺陷的第二位线预设时间后,通过检测模块检测第二位线是否有缺陷,如果检测模块检测第二位线有缺陷,则替换模块用冗余阵列中没有缺陷且未被使用的第三位线替换第二位线,同时设置模块设置第三位线的COL地址中缺陷标志位为无效,设置第三位线的COL地址中使用标志位为有效,设置子模块设置第一位线的COL地址中缺陷标志位为有效。这样,即便第一位线替换第二位线预设时间后,第二位线出现缺陷,即第一位线出现缺陷,通过没有缺陷且未被使用的第三位线替换第二位线后,NAND FLASH仍然可以作为合格产品继续正常使用,因此,本发明实施例的提供冗余位线的方法可以极大提高NAND FLASH的产品良率。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种提供冗余位线的方法和一种提供冗余位线的装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。