CN118057287A - 一种存储器控制器及其操作方法、存储系统 - Google Patents
一种存储器控制器及其操作方法、存储系统 Download PDFInfo
- Publication number
- CN118057287A CN118057287A CN202211449839.4A CN202211449839A CN118057287A CN 118057287 A CN118057287 A CN 118057287A CN 202211449839 A CN202211449839 A CN 202211449839A CN 118057287 A CN118057287 A CN 118057287A
- Authority
- CN
- China
- Prior art keywords
- memory
- memory controller
- bit count
- read
- block
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000012937 correction Methods 0.000 claims abstract description 73
- 238000001514 detection method Methods 0.000 claims abstract description 19
- 238000005067 remediation Methods 0.000 claims abstract description 9
- 230000008569 process Effects 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 7
- 230000000153 supplemental effect Effects 0.000 claims description 5
- 230000000295 complement effect Effects 0.000 claims 1
- 230000003321 amplification Effects 0.000 abstract description 5
- 238000003199 nucleic acid amplification method Methods 0.000 abstract description 5
- 238000009826 distribution Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 13
- 230000002093 peripheral effect Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 6
- 230000003190 augmentative effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 4
- 238000005859 coupling reaction Methods 0.000 description 4
- 238000007667 floating Methods 0.000 description 4
- 239000012212 insulator Substances 0.000 description 4
- 239000000047 product Substances 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- 239000000758 substrate Substances 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 229910052710 silicon Inorganic materials 0.000 description 3
- 239000010703 silicon Substances 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 101000633089 Homo sapiens Transient receptor potential cation channel subfamily V member 2 Proteins 0.000 description 2
- 229910000577 Silicon-germanium Inorganic materials 0.000 description 2
- 102100029621 Transient receptor potential cation channel subfamily V member 2 Human genes 0.000 description 2
- 239000010949 copper Substances 0.000 description 2
- 229910052732 germanium Inorganic materials 0.000 description 2
- GNPVGFCGXDBREM-UHFFFAOYSA-N germanium atom Chemical compound [Ge] GNPVGFCGXDBREM-UHFFFAOYSA-N 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- JBRZTFJDHDCESZ-UHFFFAOYSA-N AsGa Chemical compound [As]#[Ga] JBRZTFJDHDCESZ-UHFFFAOYSA-N 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 101000934888 Homo sapiens Succinate dehydrogenase cytochrome b560 subunit, mitochondrial Proteins 0.000 description 1
- 101000633107 Homo sapiens Transient receptor potential cation channel subfamily V member 3 Proteins 0.000 description 1
- 102100025393 Succinate dehydrogenase cytochrome b560 subunit, mitochondrial Human genes 0.000 description 1
- 102000003567 TRPV4 Human genes 0.000 description 1
- 101150098315 TRPV4 gene Proteins 0.000 description 1
- 102100029605 Transient receptor potential cation channel subfamily V member 3 Human genes 0.000 description 1
- LEVVHYCKPQWKOP-UHFFFAOYSA-N [Si].[Ge] Chemical compound [Si].[Ge] LEVVHYCKPQWKOP-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 229910052782 aluminium Inorganic materials 0.000 description 1
- XAGFODPZIPBFFR-UHFFFAOYSA-N aluminium Chemical compound [Al] XAGFODPZIPBFFR-UHFFFAOYSA-N 0.000 description 1
- -1 but not limited to Substances 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000010941 cobalt Substances 0.000 description 1
- 229910017052 cobalt Inorganic materials 0.000 description 1
- GUTLYIVDDKVIGB-UHFFFAOYSA-N cobalt atom Chemical compound [Co] GUTLYIVDDKVIGB-UHFFFAOYSA-N 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 229910021421 monocrystalline silicon Inorganic materials 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 229910021420 polycrystalline silicon Inorganic materials 0.000 description 1
- 229920005591 polysilicon Polymers 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 229910021332 silicide Inorganic materials 0.000 description 1
- FVBUAEGBCNSCDD-UHFFFAOYSA-N silicide(4-) Chemical compound [Si-4] FVBUAEGBCNSCDD-UHFFFAOYSA-N 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- WFKWXMTUELFFGS-UHFFFAOYSA-N tungsten Chemical compound [W] WFKWXMTUELFFGS-UHFFFAOYSA-N 0.000 description 1
- 229910052721 tungsten Inorganic materials 0.000 description 1
- 239000010937 tungsten Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
Abstract
本申请实施例公开了一种存储器控制器及其操作方法、存储系统;该存储器控制器的操作方法包括启动步骤:在从存储块读取的数据属于可纠正纠错码数据,且所述存储块的错误位计数大于特定值时,进入高阶纠错模式;检测步骤:查核所述错误位计数的诱因类型是否为电荷泄漏;补救步骤:若所述诱因类型为所述电荷泄漏,对所述存储块补充施加编程脉冲信号。本申请减少对存储块的刷新概率,降低写放大系数从而延长存储器装置的使用寿命。
Description
技术领域
本申请涉及半导体技术领域,具体涉及一种存储器控制器及其操作方法、存储系统。
背景技术
非易失性存储器装置已经广泛应用于各个领域的电子器件中。闪存是可以被电擦除并重新编程的使用最为广泛的非易失性存储器装置之一,闪存可以包括NOR和NAND两种架构的存储器装置。在对闪存操作时,可以按照块级别执行擦除操作,可以按照存储页320级别执行编程操作,可以按照存储单元级别执行读取操作。多状态闪存的编程通过识别多个不同的读取参考电压范围而实现。由于NAND的特性影响(读、写、擦的单位不一致,每个存储块有P/E次数限制),NAND容易出现数据滞留和读取干扰,从而导致数据发生错误,因此需要在NAND上增加一个闪存转换层FTL(Flash Translation Layer的缩写),通过FTL中的RD&DR管理机制帮助增强数据的可靠性。
发明内容
本申请提供一种存储器控制器及其操作方法、存储系统,可以存储器装置的写放大系数增大以及存储器装置的使用寿命缩短的技术问题。
本申请提供一种存储器控制器的操作方法,包括:
启动步骤:在从存储块读取的数据属于可纠正纠错码数据,且所述存储块的错误位计数大于特定值时,进入高阶纠错模式;
检测步骤:查核所述错误位计数的诱因类型是否为电荷泄漏;
补救步骤:若所述诱因类型为所述电荷泄漏,对所述存储块补充施加编程脉冲信号。
在本申请的一实施方案中,所述启动步骤之前包括:
在所述存储块中存储的数据属于不可校正纠错码数据时,对所述存储块进行刷新操作。
在本申请的一实施方案中,还包括:
在从存储块读取的数据属于可纠正纠错码数据,且在所述存储块的错误位计数小于所述特定值时,直接通过硬解码模块纠错校正后结束所述存储块的纠错流程。
在本申请的一实施方案中,所述存储器装置包括至少一个存储单元,所述存储单元提供至多2N个态用于存储N位的数据,所述检测步骤包括:
在保持除了所述2N个态中的末位M个高阶态以外的剩余多个低阶态的读取参考电压不变的前提下,降低所述M个高阶态的读取参考电压;M、N均为正整数;
读取所述存储块的错误位计数;
若所述检测步骤中读取所述存储块的错误位计数小于所述启动步骤中的错误位计数,确认所述诱因类型为所述电荷泄漏。
在本申请的一实施方案中,还包括:
若所述检测步骤中读取所述存储块的错误位计数大于所述启动步骤中的错误位计数,对所述存储块进行刷新操作。
在本申请的一实施方案中,所述对所述存储块补充施加编程脉冲信号包括:
在编程操作期间对所述存储块以递增步进脉冲方式补充施加多个所述编程脉冲信号。
在本申请的一实施方案中,所述对所述存储块补充施加编程脉冲信号包括:
在编程操作期间对所述存储块采用一次编程模式补充施加一个所述编程脉冲信号。
在本申请的一实施方案中,对所述存储块以递增步进脉冲方式补充施加多个编程脉冲信号的过程中,每施加一个所述编程脉冲信号之后均进行一次校验。
本申请另一方面,提供一种存储器控制器,所述存储器控制器用于控制存储器装置,所述存储器控制器被配置为:
启动步骤:在从存储块读取的数据属于可纠正纠错码数据,且所述存储块的错误位计数大于特定值时,进入高阶纠错模式;
检测步骤:查核所述错误位计数的诱因类型是否为电荷泄漏;
补救步骤:若所述诱因类型为所述电荷泄漏,对所述存储块补充施加编程脉冲信号。
在本申请的一实施方案中,所述存储器控制器还被配置为:
在所述存储块中存储的数据属于不可校正纠错码数据时,对所述存储块进行刷新操作。
在本申请的一实施方案中,所述存储器控制器还被配置为:
在从存储块读取的数据属于可纠正纠错码数据,且在所述存储块的错误位计数小于所述特定值时,直接通过硬解码模块纠错校正后结束所述存储块的纠错流程。
在本申请的一实施方案中,所述存储器装置包括至少一个存储单元,所述存储单元提供至多2N个态用于存储N位的数据,所述存储器控制器还被配置为:
在保持除了所述2N个态中的末位M个高阶态以外的剩余多个低阶态的读取参考电压不变的前提下,降低所述M个高阶态的读取参考电压;M、N均为正整数;
判断再次读取所述存储块时所述错误位计数是否小于所述启动步骤中的错误位计数;
读取所述存储块的错误位计数;
若所述检测步骤中读取所述存储块的错误位计数小于所述启动步骤中的错误位计数,确认所述诱因类型为所述电荷泄漏。
在本申请的一实施方案中,所述存储器控制器还被配置为:
若所述检测步骤中读取所述存储块的错误位计数大于所述启动步骤中的错误位计数,确定所述诱因类型为读取干扰或其他因素,对所述存储块进行刷新操作。
在本申请的一实施方案中,所述存储器控制器还被配置为:
在编程操作期间对所述存储块以递增步进脉冲方式补充施加多个所述编程脉冲信号。
在本申请的一实施方案中,所述存储器控制器还被配置为:
在编程操作期间对所述存储块采用一次编程模式补充施加一个所述编程脉冲信号。
在本申请的一实施方案中,所述存储器控制器还被配置为:
对所述存储块以递增步进脉冲方式补充施加多个编程脉冲信号的过程中,每施加一个所述编程脉冲信号之后均进行一次校验。
本申请另一方面,提供一种存储系统,包括:存储器装置以及上述的存储器控制器,所述存储器控制器用于控制所述存储器装置,其中,所述存储器控制器被配置为:
启动步骤:若从存储块读取的数据属于可校正纠错码,且在所述存储块的错误位计数大于特定值时;
检测步骤:查核所述错误位计数的诱因类型是否为电荷泄漏;
补救步骤:若所述诱因类型为所述电荷泄漏,对所述存储块补充施加编程脉冲信号。
本申请由于采用以上技术方案,具有如下显著优点:
本申请上电过程定期扫全盘的过程中,当读到存储块中的数据属于HECC数据的时候,增加判断引起HECC是否由电荷泄漏造成的过程,如果是,可以在编程期间多补打几个编程脉冲信号,不用将该存储块的数据重新编写到另外一个存储块上,避免增大WAF,可以增长产品的使用寿命。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本申请的一些方面的示例性存储器装置的示意图。
图2示出了根据本申请的一些方面的包括NAND存储器装置的存储串的示例性的单元阵列的截面的侧视图。
图3示出了根据本申请的一些方面的示例性存储器装置的结构示意图。
图4是根据本申请的示例性实施方式的三维存储器装置读取干扰示意图;
图5是根据本申请的示例性实施方式的三维存储器装置读参考电压和导通电压示意图;
图6本申请实施例提供的ISPP方式的步进脉冲的结构示意图;
图7为本申请实施例提供的验证电压脉冲的示意图;
图8本申请实施例提供的存储器控制器的操作方法的一个流程示意图;
图9本申请实施例提供的存储器控制器的操作方法的另一个流程示意图;
图10为本申请实施例提供的一种存储系统的结构示意图;
图11为根据本申请提供的一些方面的具有存储系统的示例性存储器装置卡的示意图;
图12为根据本申请的一些方面的具有存储系统的示例性固态驱动器(SSD)的示意图。
具体实施方式
下面将结合附图,对本申请一些实施方案中的技术方案进行清楚、完整地描述,显然,所描述的实施方案仅仅是本申请一部分实施方案,而不是全部的实施方案。基于本申请所提供的实施方案,本领域普通技术人员所获得的所有其他实施方案,都属于本申请保护的范围。
在本申请的描述中,需要理解的是,术语“中心”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
除非上下文另有要求,否则,在整个说明书和权利要求书中,术语“包括”被解释为开放、包含的意思,即为“包含,但不限于”。在说明书的描述中,术语“一个实施方案”、“一些实施方案”、“示例性实施方案”、“示例性地”或“一些示例”等旨在表明与该实施方案或示例相关的特定特征、结构、材料或特性包括在本申请的至少一个实施方案或示例中。上述术语的示意性表示不一定是指同一实施方案或示例。此外,所述的特定特征、结构、材料或特点可以以任何适当方式包括在任何一个或多个实施方案或示例中。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请实施方案的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在描述一些实施方案时,可能使用了“耦合”和“连接”及其衍伸的表达。例如,描述一些实施方案时可能使用了术语“连接”以表明两个或两个以上部件彼此间有直接物理接触或电接触。又如,描述一些实施方案时可能使用了术语“耦合”以表明两个或两个以上部件有直接物理接触或电接触。然而,术语“耦合”也可能指两个或两个以上部件彼此间并无直接接触,但仍彼此协作或相互作用。这里所公开的实施方案并不必然限制于本文内容。
“A、B和C中的至少一个”与“A、B或C中的至少一个”具有相同含义,均包括以下A、B和C的组合:仅A,仅B,仅C,A和B的组合,A和C的组合,B和C的组合,及A、B和C的组合。
“A和/或B”,包括以下三种组合:仅A,仅B,及A和B的组合。
本文中“适用于”或“被配置为”的使用意味着开放和包容性的语言,其不排除适用于或被配置为执行额外任务或步骤的设备。
另外,“基于”的使用意味着开放和包容性,因为“基于”一个或多个所述条件或值的过程、步骤、计算或其他动作在实践中可以基于额外条件或超出所述的值。
如本文所使用的那样,“约”、“大致”或“近似”包括所阐述的值以及处于特定值的可接受偏差范围内的平均值,其中所述可接受偏差范围如由本领域普通技术人员考虑到正在讨论的测量以及与特定量的测量相关的误差(即,测量系统的局限性)所确定。
在本申请的内容中,“在……上”、“上方”、和“之上”的含义应当以最宽泛的方式解释,使得“在……上”不仅意味着“直接在某物上”,而且还包括其间具有中间特征或层的“在某物上”的含义,并且“上方”或“之上”不仅意味着在某物“上方”或“之上”,还包括其间没有中间特征或层的在某物“上方”或“之上”的含义(即,直接在某物上)。
图1示出了根据本申请的一些方面的示例性存储器30的示意电路图。存储器30可以是图10中的存储器装置501的示例。存储器30可以包括存储器装置单元阵列301和耦合到存储器装置单元阵列301的外围电路302。存储器装置单元阵列301可以是NAND闪存存储器装置单元阵列,在该NAND闪存存储器装置单元阵列中,以NAND存储器装置的存储串308的阵列的形式设置存储单元306,其中每个NAND存储器装置的存储串308在衬底(未示出)上方垂直地延伸。在一些实施方式中,每个NAND存储器装置的存储串308包括串联耦合并且垂直地堆叠的多个存储单元306。每个存储单元306可以保持连续的模拟值,例如,电压或电荷,其取决于在存储单元306的区域内捕获的电子的数量。每个存储单元306可以是包括浮栅晶体管的浮栅类型的存储器装置单元,或者是包括电荷捕获晶体管的电荷捕获类型的存储器装置单元。注意,出于说明性目的,本申请的NAND存储器装置仅是存储器设备的一个示例。存储器30可以包括任何合适的固态、非易失性存储装置,例如,NOR闪存、FeRAM、PCM、MRAM、STT-RAM或RRAM等。
图1示出包含外围电路的示例性存储器的示意图。在图1所示,存储器30可以包括存储器装置单元阵列301和耦合在所述存储器装置单元阵列301的外围电路302,其中,存储器装置单元阵列301可以是NAND闪存存储阵列,其中,存储单元306以NAND存储串308的阵列的形式提供,每个NAND存储串308在衬底(未示出)上方垂直地延伸。在一些实施例中,每个NAND存储串308包括串联耦合并且垂直地堆叠的多个存储单元306。每一个存储单元306可以保持连续模拟值,例如,电压或电荷,其取决于在存储单元306的存储区域内捕获的电子的数量。每一个存储单元306可以是包括浮栅晶体管的浮栅类型的存储单元,或者是包括电荷捕获晶体管的电荷捕获类型的存储单元。
在一些实施例中,每个存储单元306是具有两种可能的存储器状态并且因此可以存储一位数据的单级单元(SLC,Single Level Cell),例如,第一存储器状态“0”可以对应第一电压范围,并且第二存储器状态“1”可以对应于第二电压范围。在一些实施例中,每个存储单元306是具有多个存储器状态并且因此可以存储多位数据的多级单元(MLC,MultiLevel Cell),例如,MLC可以每单元存储两位,每单元存储三位(又被称为三级单元(TLC,Trinary Level Cell),或者每单元存储四位(又被称为四级单元(QLC,Quadruple LevelCell)。每一个MLC可以被编程为采取可能的标称存储值的范围。在一个示例中,如果每个MLC存储两位数据,则MLC可以被编程为通过将三个可能的标称存储值中的一个写入到该存储单元而从擦除状态采取三个可能的编程级中的一个。第四标称存储值可以用于擦除状态。
如图1所示,每个NAND存储串308可以包括在其源极端处的源极选择栅极(SSG)310和在其漏极端处的漏极选择栅极(DSG)312。SSG 310和DSG312可以被配置为在读取和编程(或写入)操作期间激活选定的NAND存储串308(阵列的列)。在一些实施例中,同一存储块304中的NAND存储串308的源极通过同一源极线(SL)314(比如,公共SL)耦合。换句话说,根据一些实施方式,同一存储块304中的所有NAND存储串308具有阵列公共源极(ACS)。根据一些实施方式,每个NAND存储串308的DSG312耦合到相应的位线316,可以经由输出总线(未示出)从位线316读取和写入数据。在一些实施例中,每个NAND存储串308被配置为通过经由一个或多个DSG线313将选择电压(比如,高于具有DSG312晶体管的阈值电压)或取消选择电压(比如,0伏特(V))施加到相应的DSG312和/或经由一个或多个SSG线315将选择电压(比如,高于具有SSG310的晶体管的阈值电压)或取消选择电压(比如,0V)施加到相应的SSG310而被选择或被取消选择。
如图1所示,NAND存储串308可以被组织为多个存储块304,多个存储块304的每一个可以具有公共源极线314(比如,耦合到地)。在一些实施例中,每个存储块304是具有擦除操作的基本数据单位,即,同一存储块304上的所有存储单元306同时被擦除。为了擦除选定存储块304中的存储单元306,可以用擦除电压(Vers)偏置耦合到选定存储块304以及与选定存储块304同一面(Plane)中的未选定存储块304的源极线314。应该理解,在一些示例中,可以在半块级、在四分之一块级或者具有任何合适数量的块或块的任何合适的分数的级执行擦除操作。相邻NAND存储串308的存储单元306可以通过字线318耦合,字线318选择存储单元306的哪一行接受读取和编程操作。在一些实施例方式中,耦合在同一字线318的存储单元306称之为存储页320。存储页320是用于编程操作或读取操作的基本数据单位,以位为单元的一存储页320的大小可以与一个存储块304中由字线318耦合的NAND存储串308的数量相关。每个字线318可以包括在相应存储页320中的每一个存储单元306处的多个控制栅极(栅极电极)以及耦合控制栅极的栅极线。
如图1中所示,可以将多个NAND存储器装置的存储串308组织为多个存储块304。在一些实施方式中,每个存储块304是用于擦除操作的基本数据单位,即,同一存储块304上的所有存储单元306同时被擦除。
图2示出了根据本申请的一些方面的包括NAND存储器装置的示例性存储器装置单元阵列301的存储串308的截面的侧视图。如图2中所示,NAND存储器装置的存储串308可以在衬底402上方垂直地延伸穿过堆叠结构404。衬底402可以包括硅(例如,单晶硅)、硅锗(SiGe)、砷化镓(GaAs)、锗(Ge)、绝缘体上硅(silicon on insulator,SOI)、绝缘体上锗(germanium on insulator,GOI)或者任何其他合适的材料。堆叠结构404可以包括交替的导电层406和电介质层408。堆叠结构404中的导电层406和电介质层408的数量可以确定存储器装置单元阵列301中的存储单元306的数量。导电层406可以包括导电材料,导电材料包括但不限于钨(W)、钴(Co)、铜(Cu)、铝(Al)、多晶硅、掺杂硅、硅化物或其任何组合。
图3示出了一些示例性外围电路302,外围电路302包括感测放大器504、列解码器506、行解码器508、电压发生器510、控制逻辑单元512、寄存器514、输入/输出(input/output,I/O)电路516。应当理解,在一些示例中,还可以包括图3中未示出的附加外围电路。
图4是根据本申请的示例性实施方式的三维存储器装置读取干扰示意图。读取干扰(Read Disturb)是闪存介质(Flash Media)的一种重要的失效机制,管理好读取干扰是基于闪存介质存储产品的一项重要工作。通常的读取干扰包括单存储页320读取干扰(Single Page Read Disturb)和块级读取干扰(Block Level Read Disturb)。为了管理好读取干扰问题,存储器装置会记录闪存的每一个物理块(Physical Block)或者超级块(Super Block)的读取次数(Read Count),所述读取次数是对块(亦可称为存储块)进行读取操作的次数,既包括编程操作后的读取操作的次数,也包括单独进行读取操作的次数,所述物理块是连接在同一源极的可同时执行擦除操作的存储页320的集合;多个物理块组成一个存储平面,所述超级块是处在不同存储平面多个物理块组成的、可同时进行读写操作的存储块。一旦读取次数达到读取次数门限(Read Count Threshold),存储器控制器将对整个块所有存储页320进行扫描查看是否存在风险,这里的扫描是默认电压条件下读取操作(Read Operation)。如果存在风险(某些存储页320错误位达到一个临界值),存储器控制器将把这个物理块或者超级块的有效的数据搬运到一个新的物理块或者超级块中,如果不存在风险就等待下一次读取次数达到临界值。在一些实施例中,根据读取参考电压进行扫描然后从错误处理引擎(Error Correction Code Engine即ECC电路)得到发生错误位的数量,但这样并没有真正反映读取干扰的物理效果,只是粗略地反映了某一些物理错误的情况,这些错误情况可能是由于其他的因素导致如数据保存(data retention),跨温(crosstemperature)及其他可靠性的问题,甚至有可能是因为错误的默认读取参考电压(defaultread voltage)导致的。这将导致没必要的数据扫描以及数据搬运的操作,从而影响整个系统存储产品的耐力endurance。
参考图4所示,目前的三维存储器装置(例如3D NAND flash)在执行读取操作的过程中,一种方法是当读取某个存储单元的数据时,对选中层字线(栅极)施加读取电压V-ref,并对非选中层栅极施加导通电压V-pass。一般情况下,导通电压V-pass会达到6V以上,在经过上万次的读操作之后,导通电压V-pass会引起读取参考电压明显的增加,尤其是对于擦除态(L0)及低编程态,从而导致读取错误。这就是导通电压所带来的读干扰/读取干扰。实验表明,读取干扰与引起读取干扰的电压呈正相关,导通电压V-pass的电压越大,读取干扰越严重。注意,出于说明性目的,本申请的三维存储器装置(例如3D NAND flash)仅是存储器设备的一个示例。存储器装置还可以包括二维存储器装置(例如2D NAND flash)。
图5是根据本申请的示例性实施方式的三维存储器装置读取电压V-ref和导通电压V-pass示意图。如图5所示,以存储单元包含四个存储状态(下文简称态)的MLC为例,横坐标表示四个不同存储状态的阈值电压分布,其中L0为擦除状态阈值电压分布,L1-L3为不同编程状态的阈值电压分布,纵坐标表示各个状态的存储单元数量,可见,每个状态的存储单元数量呈高斯分布。读取电压V-ref处于任意两个相邻存储状态之间,读取参考电压从小到大依次为VRL1,VRL2,VRL3,其中,VRL1表示擦除状态的默认读取参考电压,导通电压V-pass高于读取参考电压的最大值。
在实际应用中,对于具有多数据状态的闪存设备,比如,NAND闪存设备,在对存储单元执行编程时为了减少字线之间的耦合和干扰,在一些实施例中,对于存储页320或块进行编程时可以采用多遍编程,以实现更紧密的阈值电压分布。在一些实施例中,所述多遍编程可以包括两遍编程、三遍编程等等,其中,所述两遍编程可以包括第一遍粗略编程和精细编程;所述三遍编程可以包括第一遍粗略编程、第二遍粗略编程和精细编程。这里,所述多遍编程中最后一遍编程为精细编程;第一遍粗略编程、第二遍粗略编程统称为粗略编程,也可以均称之为非最后遍编程。在一些实施例中,不论是非最后遍编程还是精细编程均可以是增量式步进脉冲编程(ISPP)方式,该ISPP方案可以是基于步进电压逐步提高字线偏置电压的同时对所选择的存储页320中的存储单元进行若干次编程,其中,增量式步进脉冲Vpgm可参考图6。为了兼顾编程速度与具有较宽的读取窗口裕度(RWM,Read Window Margin),在一些实施例中,在非最后遍编程(各粗编程阶段),在选择的字线(被选择耦合有需要被编程存储单元的字线)上施加具有较大设定步长的编程电压脉冲,以将耦合到所述选择的字线上的存储单元快速的编程到中间数据状态;在各粗略编程阶段之后进行的精细编程阶段,在选择的字线上施加具有较小设定步长的编程电压脉冲,以将耦合到所述选择的字线上的存储单元准确的编程到最终数据状态,也即,在一些实施例中,在所述多遍编程的每一遍编程中,所述编程操作中施加的编程电压/脉冲按照不同的设定步长增大,具体的设定步长可以根据实际编程情况由设计人员设置。其中,所说中间数据状态为在被编程的存储单元未达到最终数据状态前的一个或多个数据状态,比如,在对TLC类型存储单元编程时,某一存储单元的最终数据状态为S3,则其中间数据状态可以为S1、S2至少之一;也可以是其他可验证的数据状态。所述最终数据状态为用户期望被编程的存储单元被编程到的数据状态,比如,前述的对TLC类型存储单元编程时,最终数据状态为S3。
应该理解的是,在对存储单元编程期间,为了了解被编程的存储单元是否编程至目标编程数据状态,在施加两次编程电压脉冲(施加编程电压脉冲的过程也称之为编程操作)之间,增设验证操作以确定被编程的存储单元是否编程至目标的数据状态,也即,编程操作和验证操作交替进行。所说的验证操作可以是一个或者一组验证电压脉冲,验证电压脉冲如图7所示,图7中,1001和1003为步进编程脉冲Vpgm;1002为验证电压脉冲。基于前述描述,也就是,所述多遍编程可以包括至少一遍粗略编程和一编程精细编程,每一遍编程包括至少一个编程操作和至少一个验证操作。
在NAND存储器装置处于上电状态时,FTL会定期扫描已写的block即存储块,存储器控制器被设计为根据从存储器装置读取的数据的错误位计数fbc(failed bit count的缩写)或误码率(bit error rate)产生刷新命令。具体而言,ECC电路至少包括译码器、错误计数器、刷新控制电路。译码器被配置为从存储器装置接收数据和对应的奇偶校验码,并使用对应的奇偶校验码对该数据进行译码操作来产生译码后的数据(decoded data),其中该数据和对应的奇偶校验可以响应于存储器控制器发送的读命令而被读取。在对数据进行译码的过程中,译码器可以知道接收数据的哪个位具有错误,一旦发现错误位,译码器通知错误计数器。错误计数器被配置为根据由译码器发现的错误位计数产生错误位信息给刷新控制电路,其中错误位信息可以是过去一段时间内的错误位计数,或者数据的误码率。
当存储器控制器通过错误计数器获取到错误位计数后,控制电路将错误位计数与特定值进行大小比较,如果错误计数器大于特定值即表明出现下文所述的HECC标志,通过刷新控制电路直接对该出现HECC的存储块进行刷新操作,并将该出现HECC的存储块中的数据重新写到另外新的存储块上,直接重新写这笔数据,这样会增大存储器控制器的WAF(Write amplification factor的缩写,即写放大系数),降低NAND存储器装置的使用寿命。
其中,刷新操作是指对存储块进行重写或擦除的操作,存储器控制器以存储器装置单元阵列301由在行方向和列方向以阵列形式布置的多个存储单元306组成。存储器控制器可以包括芯片控制电路、刷新控制电路、译码器和接口电路、与存储器装置单元阵列301连接的阵列控制电路。译码器译码经由接口电路提供的来自主机20的访问请求(数据读和写),并将译码结果输出到阵列控制电路。芯片控制电路译码经由接口电路提供的来自主机20的访问请求(数据读和写)译码为包括行和列地址信息的译码结果,并基于来自刷新控制电路的刷新请求,将译码结果和对应于刷新请求的控制信号提供到阵列控制电路。阵列控制电路可以执行存储器装置单元阵列301中的存储单元306的数据读操作、数据写操作和刷新操作。刷新控制电路根据其内部所包含的定时器的值,输出为保持存储单元306中所存储的数据所需的刷新操作请求,规则给定的间隔(tREFI)通过以有序方式打开和关闭行以完成对选中存储块中的存储单元的重写或擦除操作。此外,芯片控制电路执行访问请求(数据读和写)与刷新请求之间的仲裁(仲裁处理)。在该仲裁中,在先产生地请求被优先处理。
本申请进一步提出如图8所示的示例性实施方式的存储器控制器的操作方法的流程示意图。存储器控制器的操作方法的流程包括如下步骤:
S10启动步骤:在从存储块读取的数据属于可纠正纠错码数据,且所述存储块的错误位计数大于特定值时,进入高阶纠错模式;
在一些示例中,存储器控制器可以执行各种操作以确保储存在存储器装置中的数据的可靠性。例如,存储器控制器中至少包括ECC(Error Correcting Code的缩写)电路和控制电路。ECC电路基于纠错码生成用于存储在存储器装置中的数据的纠错码,或者检测从存储器装置读取的数据中的错误以校正。示例性地,ECC电路可以检测和校正小于纠错能力的错误,ECC电路不能检测或校正超过纠错能力的错误。对于ECC电路不能纠正错误的数据属于UECC(Uncorrectable Error Correcting Code的缩写),即不可校正纠错码。对于ECC电路能纠正错误的数据属于CECC(Correctable Error Correcting Code的缩写),即可校正纠错码。对于可校正纠错码的数据,还分类为对于ECC电路能纠正错误且存储块的错误位计数大于特定值的数据被称作HECC(High Error Correcting Code)数据。
ECC解码操作可以包括硬解码操作和软解码操作,ECC电路的纠错机制是先由硬解码模块(hard decoding)进行硬解码操作再由软解码模块(soft decoding)进行软解码操作,即当硬解码操作失败时,执行软解码操作。总之,当数据受损程度较高时,仅凭常规读取纠错无法完全纠正待恢复数据中的错误。这种情况下存储器控制器可以通过调整采用不同的读取阈值电压对所述待恢复数据进行多次重复读取,而采用纠错码的硬解码功能进行解码纠错。当数据受损较为严重时,通过若干次的重复读取以及硬解码可能也无法实现数据纠错。这种情况下存储器控制器可以执行软解码操作进行数据恢复。其中,硬解码操作和软解码操作都可以在最大迭代计数内迭代,直到ECC解码操作成功。
其中,特定值是指错误计数的一个上限值,如果存储块的错误位计数大于特定值,说明存储块的数据误码率高,虽然存储块的数据还是属于CECC数据,但是ECC电路纠错耗时长难以纠错校正,属于CECC数据且存储块的错误位计数大于特定值的数据视为HECC数据,即需要进入高阶纠错模式的CECC数据。因此,为了解决该问题本申请在存储块的错误位计数大于特定值时,直接进入高阶纠错模式。
具体的高阶纠错模式的流程参见下文步骤S20~S30。
S20检测步骤:查核所述错误位计数的诱因类型是否为电荷泄漏。
在一些示例中,存储块的数据可能易受到读/读取干扰、电荷泄漏、编程干扰、擦除干扰的影响导致出现误差,因此,诱因类型包括但是不限于读/读取干扰、电荷泄漏、编程干扰、写入干扰、擦除干扰。存储块所储存的电荷丢失即电荷泄漏时,导致存储块的数据状态发生变化,从而读取出来的数据错误。因此,在本步骤中检测分析出存储块的错误位计数大于特定值的诱因类型。
具体的,请继续参阅图9,在上述S20检测步骤具体可以包括:
S21在保持除了所述2N个态中的M个高阶态以外的剩余多个低阶态的读取参考电压不变的前提下,降低所述M个高阶态的读取参考电压;M、N均为正整数。
在一些示例中,由于存储器装置包括至少一个存储单元306,每个存储单元306提供至多2N个态用于存储N位的数据。存储单元306可以被布置为单级存储单元或者多级存储单元,而多级存储单元又可以分为多级存储单元MLC、三级存储单元TLC以及四级存储单元QLC等等,因此,对于一个存储页320,在成功编程过程(具有验证)结束时,被编程的存储单元的读取参考电压应当在一个或者多个分布内。在实际应用过程中,不同种类的存储单元具有的存储状态是不相同的,存储状态包括一个擦除态和多个编程态。不论是哪种类型的存储单元,擦除态均属于低阶态,将多个编程态按照读取参考电压从小至大的顺序依次排列,排列在前的2N-M-1个编程态也可以视为低阶态,而排列在后的剩余多个编程态即M个编程态则是高阶态。由于高阶态对应的电荷分布聚集浓度高于低阶态对应的电荷分布,因此,降低高阶态的读取参考电压时,高阶态的电荷浓度减小的速度更快。如此,在保持2N-M-1个低阶态的读取参考电压不变的前提下,降低M个高阶态的读取电压,这样就能够让M个高阶态对应的阈值电压分布形同整体向右移偏移。
单级存储单元SLC存储一位数据,单级存储单元SLC对应两个阈值电压分布:L0和L1,其中,阈值电压分布L0对应于擦除态;阈值电压分布L1对应于编程态,擦除态对应的阈值电压分布L0所具有的读取参考电压小于编程态阈值电压分布L所具有的读取参考电压。例如,L0可视为低阶态,L1可视为高阶态。
多级存储单元MLC存储两位数据,多级存储单元MLC对应四个阈值电压分布:L0、L1、L2及L3,读取参考电压依次升高。同样的,阈值电压分布L0对应于擦除态;阈值电压分布L1、L2及L3对应于编程态。例如,L0可视为低阶态,L1、L2及L3可视为高阶态。或者,L0、L1可视为低阶态,L2及L3可视为高阶态。
三级存储单元TLC存储三位数据,三级存储单元TLC对应八个阈值电压分布:L0、L1、L2、L3、L4、L5、L6、L7,读取参考电压依次升高。同样的,阈值电压分布L0对应于擦除态;阈值电压分布L1、L2、L3、L4、L5、L6、L7对应于编程态。例如,L0可视为低阶态,L1至L7可视为高阶态。或者,L0至L3可视为低阶态,L4至L7可视为高阶态。
S22读取所述存储块的错误位计数;
S23若所述检测步骤中读取所述存储块的错误位计数小于所述启动步骤中的错误位计数,确认所述诱因类型为所述电荷泄漏。
在一些示例中,在如步骤21所述保持2N-M-1个低阶态的读取参考电压不变,且降低M个高阶态的读取参考电压后,再次通过译码器进行译码操作,然后通过错误计数器更新错误位计数以获取新的错误位计数。控制电路比较S10启动步骤获得的错误位计数以及S21~S22步骤所获得的新的错误位计数,如果S10启动步骤获得的错误位计数小于S21~S22步骤所获得的新的错误位计数,也就是说,降低所述M个高阶态的读取参考电压后该存储块的错误位计数降低,那么,存储器控制器可以确认S10启动步骤期间存储块的错误位计数大于特定值的诱因类型就属于电荷泄漏引起的,然后存储器控制器参照S30补救步骤通过外围电路对该存储块进行补充施加编程脉冲信号。
S30补救步骤:若所述诱因类型为所述电荷泄漏,对所述存储块补充施加编程脉冲信号。
在一些示例中,如果经分析得到该存储块的错误位计数大于特定值的诱因属于电荷泄漏,那么,存储器控制器通过控制电路向存储器装置发送指令,以控制外围电路对存储器装置中属于HECC且错误位计数的诱因类型属于电荷泄漏的存储块补充施加编程脉冲信号,将属于HECC的存储块丢失的电荷补回,这样就可以减少对存储块的刷新概率,降低写放大系数从而延长存储器装置的使用寿命。此外,还能避免刷新操作所带来的延时影响,减少系统整体的读数据延时,提高服务质量。
在一些实施例中,所述对所述存储块补充施加编程脉冲信号包括:
S310在编程操作期间对所述存储块以递增步进脉冲方式补充施加多个所述编程脉冲信号。
在一些示例中,在实际应用中,对于具有多数据状态的闪存设备,比如,NAND闪存设备,在对存储单元执行编程时为了减少字线之间的耦合和干扰,在一些实施例中,对于存储块进行编程时可以采用多遍编程,以实现更紧密的阈值电压分布。所述多遍编程可以是增量式步进脉冲编程(ISPP)方式,该ISPP方案可以是基于步进电压逐步提高字线偏置电压的同时对所选择的存储块进行若干次编程,其中,增量式步进脉冲Vpgm可参考图6。为了兼顾编程速度与具有较宽的读取窗口裕度(RWM,Read Window Margin),在非最后遍编程进行粗略编程阶段,即对属于HECC的存储块施加具有较大设定步长的编程电压脉冲,以将属于HECC的存储块快速的编程到中间数据状态。然后在各非最后遍编程之后进行精细编程阶段,对属于HECC的存储块施加具有较小设定步长的编程电压脉冲,以将属于HECC的存储块准确的编程到最终数据状态。也即,在所述多遍编程的每一遍编程中,所述编程操作中施加的编程电压/脉冲信号按照不同的设定步长增大,具体的设定步长可以根据实际编程情况由自行设置。
在一些实施例中,所述对所述存储块补充施加编程脉冲信号包括:
S320对所述存储块以递增步进脉冲方式补充施加多个编程脉冲信号的过程中,每施加一个所述编程脉冲信号之后均进行一次校验。
在一些示例中,存储器控制器对于存储器装置以递增步进脉冲编程(ISPP)方案操作来施加编程电压。ISPP方案是通过从预定编程起始电压起以步进电压为单位增加编程电压来实施。在施加编程电压后,施加检验电压到已编程存储块用于编程检验。
对于编程操作,执行递增步进脉冲编程(ISPP)。在编程操作期间,存储器控制器接收编程(或写)命令和编程地址信息。存储器控制器将编程地址信息部分地译码为行和列地址信息。存储器控制器会控制电压发生器510以产生用于在存储器装置单元阵列301中编程数据的电压,并向行解码器508提供行地址信息。行解码器508响应于行地址信息选择性地向存储器装置单元阵列301的字线WL提供来自电压发生器510的字线电压。至少在该示例实施例中,行解码器508可以响应于块地址选择存储块,并选择其中的存储页320。在施加电压时,行解码器508施加足够高的电压以导通串选择晶体管SST,并向地源极晶体管GST施加低电压。行解码器508向未选择的存储单元晶体管MCT提供非选择电压,以便防止这些未选择的存储单元MC改变其阈值分布状态。行解码器508还向一个或多个所选存储单元的字线WL施加编程电压Vpgm。编程电压Vpgm以初始电压开始,并在每个编程循环递增增加,直到数据被编程,在确定数据被编程成功后说明校验通过,然后再施加下一个编程脉冲信号。例如,编程电压可以从15V至20V变动。同理,列解码器506可参照行解码器进行编程一样以递增步进脉冲编程(ISPP)方案进行编程。总之,执行若干迭代过程的循环,每个循环包括用于使阈值电压递增的程序脉冲应用步骤和用于确定是否已经达到目标阈值电压的验证读取步骤。
在一些实施例中,所述对所述存储块补充施加编程脉冲信号包括:
S330在编程操作期间对所述存储块采用一次编程模式补充施加一个所述编程脉冲信号。
在一些示例中,在编程操作期间对存储块施加具有较大电压数值的编程电压脉冲,以便一次性施加一个编程脉冲信号,让将属于HECC的存储块准确的编程到最终数据状态。
在上述启动步骤S10之前,还可以包括:
S01刷新步骤:在所述存储块中存储的数据属于不可校正纠错码数据时,对所述存储块进行刷新操作。
在一些示例中,对于ECC电路不能纠正错误的数据即UECC数据,存储器控制器根据属于UECC的存储块对应的逻辑地址生成刷新指令,并向与存储器装置连接的外围电路发送刷新指令,外围电路接收到刷新指令后对逻辑地址查找到的存储块进行刷新操作。
在一些实施例中,所述存储器控制器的操作方法还可以包括:
S40纠错步骤:在从存储块读取的数据属于可纠正纠错码数据,且在所述存储块的错误位计数小于所述特定值时,直接通过硬解码模块纠错校正后结束所述存储块的纠错流程。
在一些示例中,由于特定值是指错误计数的一个上限值,如果存储块的错误位计数小于特定值,说明存储块的数据误码率低,虽然存储块的数据还是属于CECC数据,但是ECC电路纠错耗时短容易纠错校正。因此,不需要进入高阶纠错模式,直接由硬解码模块对从存储块读取的数据进行硬解码操作,以便使用纠错码硬解码功能来纠正原始读取数据中的错误来进行纠错校正,将存储块中存储的数据正确的读取出来,然后结束对改存储块的纠错流程。
本申请在从存储块读取的数据属于可纠正纠错码数据,且存储块的错误位计数小于特定值时,直接由纠错码硬解码功能来纠正能够省去软解码操作,能避免软解码操作所带来的延时影响,从而有效地减少系统整体的读数据延时,提高服务质量。
在上述S20检测步骤还可以包括:
S24若所述检测步骤中读取所述存储块的错误位计数大于所述启动步骤中的错误位计数,确定所述诱因类型为读取干扰或其他因素,对所述存储块进行刷新操作。
在一些示例中,其中,其他因素包括编程干扰、写入干扰、擦除干扰等。在如步骤21所述保持2N-M-1个低阶态的读取参考电压不变,且降低M个高阶态的读取参考电压后,再次通过译码器进行译码操作,然后通过错误计数器更新错误位计数以获取新的错误位计数。控制电路比较S10启动步骤获得的错误位计数以及S21~S22步骤所获得的新的错误位计数,如果S10启动步骤获得的错误位计数大于S21~S22步骤所获得的新的错误位计数,那么,存储器控制器可以确认S10启动步骤期间存储块的错误位计数大于特定值的诱因类型不属于电荷泄漏引起的而是读取干扰或其他因素,这样,存储器控制器就需要通过刷新控制电路参照S30补救步骤对该存储块进行刷新操作。
基于相同的发明构思,本申请实施例还提供一种存储器控制器,所述存储器控制器用于控制存储器装置,所述存储器控制器被配置为:
启动步骤:在从存储块读取的数据属于可纠正纠错码数据,且所述存储块的错误位计数大于特定值时,进入高阶纠错模式;
检测步骤:查核所述错误位计数的诱因类型是否为电荷泄漏;
补救步骤:若所述诱因类型为所述电荷泄漏,对所述存储块补充施加编程脉冲信号。
在一些示例中,所述存储器控制器还被配置为:
在所述存储块中存储的数据属于不可校正纠错码数据时,对所述存储块进行刷新操作。
在一些示例中,所述存储器控制器还被配置为:
在从存储块读取的数据属于可纠正纠错码数据,且在所述存储块的错误位计数小于所述特定值时,直接通过硬解码模块纠错校正后结束所述存储块的纠错流程。
在一些示例中,所述存储器装置包括至少一个存储单元,所述存储单元提供至多2N个态用于存储N位的数据,所述存储器控制器还被配置为:
在保持除了所述2N个态中的末位M个高阶态以外的剩余多个低阶态的读取参考电压不变的前提下,降低所述M个高阶态的读取参考电压;M、N均为正整数;
读取所述存储块的错误位计数;
若所述检测步骤中读取所述存储块的错误位计数小于所述启动步骤中的错误位计数,确认所述诱因类型为所述电荷泄漏。
在一些示例中,所述存储器控制器还被配置为:
若所述检测步骤中读取所述存储块的错误位计数大于所述启动步骤中的错误位计数,确定所述诱因类型为读取干扰或其他因素,对所述存储块进行刷新操作。
在一些示例中,所述存储器控制器还被配置为:
在编程操作期间对所述存储块以递增步进脉冲方式补充施加多个所述编程脉冲信号。
在一些示例中,所述存储器控制器还被配置为:
在编程操作期间对所述存储块采用一次编程模式补充施加一个所述编程脉冲信号。
在一些示例中,所述存储器控制器还被配置为:
对所述存储块以递增步进脉冲方式补充施加多个编程脉冲信号的过程中,每施加一个所述编程脉冲信号之后均进行一次校验。
需要说明的是,所述操作方法所描述的技术方案与前述存储器装置的技术方案属于同一发明构思,二者具有相同的技术特征,前述已经对存储器装置的结构及本申请的技术方案中出现的名词详细的描述,那么,此处出现的名词,可以按照前述描述的含义进行理解,在此不再赘述。
本申请实施例还提供一种存储系统,包括:存储器装置;以及上述存储器控制器,所述存储器控制器用于控制所述存储器装置,其中,所述存储器控制器被配置为:
启动步骤:若从存储块读取的数据属于可校正纠错码,且在所述存储块的错误位计数大于特定值时;
检测步骤:查核所述错误位计数的诱因类型是否为电荷泄漏;
补救步骤:若所述诱因类型为所述电荷泄漏,对所述存储块补充施加编程脉冲信号。
需要说明的是,这里的存储系统包含前述的存储器控制器,二者具有相同的技术特征,前述已经对存储器装置、存储器控制器的结构及本申请的技术方案中出现的名词详细的描述,那么,此处出现的名词,可以按照前述描述的含义进行理解,在此不再赘述。
其中,存储系统可以集成到各种类型的存储设备中,例如,包括在相同封装(例如,通用闪存存储(Universal Flash Storage,简称UFS)封装或嵌入式多媒体卡(EmbeddedMulti Media Card,简称eMMC)封装)中。也就是说,存储系统可以应用于并且封装到不同类型的电子产品中,例如,移动电话(例如手机)、台式计算机、平板电脑、笔记本电脑、服务器、车载设备、游戏控制台、打印机、定位设备、可穿戴设备、智能传感器、移动电源、虚拟现实(Virtual Reality,简称VR)设备、增强现实(Augmented Reality,简称AR)设备或者其中具有储存器的任何其他合适的电子设备。
在一些示例中,如图10所示,存储系统50包括存储器控制器和一个三维存储器装置,存储系统可以被集成到如图11所示的三维存储器装置卡150中。
其中,三维存储器装置卡150包括PC卡(PCMCIA,个人计算机三维存储器装置卡国际协会)、紧凑型闪存(Compact Flash,简称CF)卡、智能媒体(Smart Media,简称SM)卡、三维存储器装置棒、多媒体卡(Multimedia Card,简称MMC)、安全数码(Secure DigitalMemory Card,简称SD)卡、UFS中的任一种。
在另一些实施方案中,存储系统50包括存储器控制器和多个三维存储器装置,存储系统50集成到固态硬盘(Solid State Drives,简称SSD)中。
本申请的一些实施方案还提供了一种电子设备。电子设备可以是手机、台式计算机、平板电脑、笔记本电脑、服务器、车载设备、可穿戴设备(例如智能手表、智能手环、智能眼镜等)、移动电源、游戏机、数字多媒体播放器等中的任一种。
如图10所示,电子设备1000可以包括上文所述的存储系统50,还可以包括中央处理器CPU(CentralProcessing Unit,中央处理器)和缓存器(cache)等中的至少一种。电子设备可以是移动电话、台式计算机、膝上型计算机、平板计算机、车辆计算机、游戏控制台、打印机、定位设备、可穿戴电子设备、智能传感器、虚拟现实(virtual reality,VR)设备、增强现实(Augmented RealityAR)设备,或其中具有储存器的任何其他合适的电子设备。电子设备1000可以包括主机20和存储系统50,存储系统50具有一个或多个存储器装置501和存储器控制器502。主机20可以包括电子设备的处理器,例如中央处理单元(centralprocessing unit,CPU),或片上系统(system-on-chip,SoC),例如应用处理器(application processor,AP)。主机20还可以包括用于与存储系统50耦合的存储接口,该存储接口被配置为遵守相应的协议(例如NVMe、PCIe等协议),主机20可以被配置为通过例如存储接口向存储器装置501发送数据或从存储器装置501接收数据。为了向存储器装置501发送数据或从存储器装置501接收数据,除了数据之外,主机20还可以向存储系统50发送指令。存储器装置501可以是本申请中公开的任何存储器装置。
根据一些实施方式,存储器控制器502耦合到存储器装置501和主机20,并且被配置为控制存储器装置501。存储器控制器502具体可以由微处理器、微存储器控制器(又名微存储器控制器单元(MCU))、中央处理器(CPU)、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程逻辑设备(PLD)、状态机、门控逻辑单元、分立硬件电路或它们的组合,以及被配置为执行以下详细描述的各种功能的其他合适的硬件、固件和/或软件来实现。存储器控制器502可以管理存储在存储器装置501中的数据,并且通过其前段接口与主机20通信。在一些实施方式中,存储器控制器502被设计为用于在低占空比环境中操作,如安全数字(secure digital,SD)卡、紧凑型闪存(compact Flash,CF)卡、通用串行总线(universal serial bus,USB)闪存驱动器、或用于在诸如个人计算机、数字相机、移动电话等的电子设备中使用的其他介质。在一些实施方式中,存储器控制器502被设计为用于在高占空比环境SSD或嵌入式多媒体卡(embedded multi-media-card,eMMC)中操作,SSD或eMMC用作诸如智能电话、平板计算机、膝上型计算机等的移动设备的数据储存器以及企业存储阵列。存储器控制器502可以被配置为控制存储器装置501的操作,例如读取、擦除和编程操作。
存储器控制器502还可以被配置为管理关于存储在或要存储在存储器装置501中的数据的各种功能,包括但不限于坏块管理、垃圾收集、逻辑到物理地址转换、损耗均衡等。在一些实施方式中,存储器控制器502还被配置为处理关于从存储器装置501读取的或者被写入到存储器装置501的数据的纠错码(error correction code,ECC)。存储器控制器502还可以执行任何其他合适的功能,例如,格式化存储器装置501。存储器控制器502可以根据具体通信协议与外部设备(例如,主机20)通信。例如,存储器控制器502可以通过各种接口协议中的至少一种与外部设备通信,接口协议可以是例如通用串行总线(universalserialbus,USB)协议、多媒体卡(multimedia card,MMC)协议、外围部件互连(peripheralcomponent interconnection,PCI)协议、PCI高速(PCI-express,PCI-E)协议、高级技术附件(advanced technology attachment,ATA)协议、串行ATA协议、并行ATA协议、小型计算机小型接口(small computer small interface,SCSI)协议、增强型小型磁盘接口(enhancedsmall disk interface,ESDI)协议、集成驱动电子设备(integrated driveelectronics,IDE)协议、Firewire协议等。
存储器控制器502和一个或多个存储器装置501可以集成到各种类型的存储系统中,例如,包括在相同封装(例如,通用闪存存储(universal Flash storage,UFS)封装或eMMC封装)中。也就是说,存储系统50可以实施并且封装到不同类型的终端电子产品中。在如图11中所示的一个示例中,存储器控制器502和单个存储器装置501可以集成到三维存储器装置卡150中。三维存储器装置卡150可以包括PC卡(personal computer memory cardinternationalassociation,PCMCIA),个人计算机存储器装置卡国际协会)、CF卡、智能媒体(smart media,SM)卡、存储器装置棒、多媒体卡(MMC、RS-MMC、MMC micro)、SD卡(SD、miniSD、micro SD、SDHC)、UFS等。三维存储器装置卡150还可以包括存储器装置卡连接器1501,该存储器装置卡连接器1501被配置为将三维存储器装置卡150耦合到主机20。在如图12中所示的另一示例中,存储器控制器502和多个存储器装置501可以集成到SSD151中。SSD151还可以包括SSD连接器1511,该SSD连接器1511被配置为将SSD151耦合到主机20。在一些实施方式中,SSD151的存储容量和/或操作速度大于三维存储器装置卡150的存储容量和/或操作速度。
以上对本申请实施例所提供的一种存储器控制器及其操作方法、存储系统进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (17)
1.一种存储器控制器的操作方法,其特征在于,包括:
启动步骤:若从存储块读取的数据属于可校正纠错码,且在所述存储块的错误位计数大于特定值时,进入高阶纠错模式;
检测步骤:查核所述错误位计数的诱因类型是否为电荷泄露;以及
补救步骤:若所述诱因类型为所述电荷泄露,对所述存储块补充施加编程脉冲信号。
2.根据权利要求1所述的存储器控制器的操作方法,其特征在于,所述启动步骤之前包括:
若从存储块读取的数据属于不可校正纠错码时,对所述存储块进行刷新处理。
3.根据权利要求1所述的存储器控制器的操作方法,其特征在于,还包括:
若从所述存储块读取的数据属于可校正纠错码,且在所述存储块的错误位计数小于所述特定值时,直接通过硬解码模块纠错校正后结束所述存储块的纠错流程。
4.根据权利要求1所述的存储器控制器的操作方法,其特征在于,所述存储器包括至少一个存储单元,所述存储单元提供至多2N个态用于存储N位的数据,所述检测步骤包括:
在保持除了所述2N个态中的末位M个高阶态以外的剩余多个低阶态的读取参考电压不变的前提下,降低所述M个高阶态的读取参考电压;M、N均为正整数;
读取所述存储块的错误位计数;
若所述检测步骤中读取所述存储块的错误位计数小于所述启动步骤中的错误位计数,确认所述诱因类型为所述电荷泄露。
5.根据权利要求1所述的存储器控制器的操作方法,其特征在于,还包括:
若所述检测步骤中读取所述存储块的错误位计数大于所述启动步骤中的错误位计数,确定所述诱因类型为读干扰或其他因素,对所述存储块进行刷新处理。
6.根据权利要求1-5任一项所述的存储器控制器的操作方法,其特征在于,所述对所述存储块补充施加编程脉冲信号包括:
在编程操作期间对所述存储块以递增步进脉冲方式补充施加多个所述编程脉冲信号。
7.根据权利要求1-5任一项所述的存储器控制器的操作方法,其特征在于,所述对所述存储块补充施加编程脉冲信号包括:
在编程操作期间对所述存储块采用一次编程模式补充施加一个所述编程脉冲信号。
8.根据权利要求6所述的存储器控制器的操作方法,其特征在于,对所述存储块以递增步进脉冲方式补充施加多个编程脉冲信号的过程中,每施加一个所述编程脉冲信号之后均进行一次校验。
9.一种存储器控制器,所述存储器控制器用于控制存储器,其特征在于,所述存储器控制器被配置为:
启动步骤:若从存储块读取的数据属于可校正纠错码,且在所述存储块的错误位计数大于特定值时,进入高阶纠错模式;
检测步骤:查核所述错误位计数的诱因类型是否为电荷泄露;以及
补救步骤:若所述诱因类型为所述电荷泄露,对所述存储块补充施加编程脉冲信号。
10.根据权利要求9所述的存储器控制器,其特征在于,所述存储器控制器还被配置为:
若从存储块读取的数据属于不可校正纠错码时,对所述存储块进行刷新处理。
11.根据权利要求9所述的存储器控制器,其特征在于,所述存储器控制器还被配置为:
若从所述存储块读取的数据属于可校正纠错码,且在所述存储块的错误位计数小于所述特定值时,直接通过硬解码模块纠错校正后结束所述存储块的纠错流程。
12.根据权利要求9所述的存储器控制器,其特征在于,所述存储器包括至少一个存储单元,所述存储单元提供至多2N个态用于存储N位的数据,所述存储器控制器还被配置为:
在保持除了所述2N个态中的末位M个高阶态以外的剩余多个低阶态的读取参考电压不变的前提下,降低所述M个高阶态的读取参考电压;M、N均为正整数;
读取所述存储块的错误位计数;
若所述检测步骤中读取所述存储块的错误位计数小于所述启动步骤中的错误位计数,确认所述诱因类型为所述电荷泄露。
13.根据权利要求12所述的存储器控制器,其特征在于,所述存储器控制器还被配置为:
若所述检测步骤中读取所述存储块的错误位计数大于所述启动步骤中的错误位计数,确定所述诱因类型为读干扰或其他因素,对所述存储块进行刷新处理。
14.根据权利要求9-13任一项所述的存储器控制器,其特征在于,所述存储器控制器还被配置为:
在编程操作期间对所述存储块以递增步进脉冲方式补充施加多个所述编程脉冲信号。
15.根据权利要求9-13任一项所述的存储器控制器,其特征在于,所述存储器控制器还被配置为:
在编程操作期间对所述存储块采用一次编程模式补充施加一个所述编程脉冲信号。
16.根据权利要求14所述的存储器控制器,其特征在于,所述存储器控制器还被配置为:
对所述存储块以递增步进脉冲方式补充施加多个编程脉冲信号的过程中,每施加一个所述编程脉冲信号之后均进行一次校验。
17.一种存储器系统,其特征在于,包括:存储器;以及权利要求9至16任一项所述的存储器控制器,所述存储器控制器用于控制所述存储器,其中,所述存储器控制器被配置为:
启动步骤:若从存储块读取的数据属于可校正纠错码,且在所述存储块的错误位计数大于特定值时;
检测步骤:查核所述错误位计数的诱因类型是否为电荷泄露;以及
补救步骤:若所述诱因类型为所述电荷泄露,对所述存储块补充施加编程脉冲信号。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211449839.4A CN118057287A (zh) | 2022-11-18 | 2022-11-18 | 一种存储器控制器及其操作方法、存储系统 |
US18/091,215 US20240168648A1 (en) | 2022-11-18 | 2022-12-29 | Memory controller and operation method thereof, and memory system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211449839.4A CN118057287A (zh) | 2022-11-18 | 2022-11-18 | 一种存储器控制器及其操作方法、存储系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118057287A true CN118057287A (zh) | 2024-05-21 |
Family
ID=91068724
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211449839.4A Pending CN118057287A (zh) | 2022-11-18 | 2022-11-18 | 一种存储器控制器及其操作方法、存储系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20240168648A1 (zh) |
CN (1) | CN118057287A (zh) |
-
2022
- 2022-11-18 CN CN202211449839.4A patent/CN118057287A/zh active Pending
- 2022-12-29 US US18/091,215 patent/US20240168648A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20240168648A1 (en) | 2024-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5085939B2 (ja) | 書き込み/消去失敗検出機構を有するフラッシュ記憶システム | |
JP4391941B2 (ja) | メモリセルの隣接する行の記憶素子間の結合の効果を減少させる方法 | |
EP2154687B1 (en) | Erased sector detection mechanisms | |
US8539138B2 (en) | Flash memory device and method of programming flash memory device | |
US8503236B2 (en) | Nonvolatile memory device, methods of programming the nonvolatile memory device and memory system including the nonvolatile memory device | |
US11164634B2 (en) | Non-volatile storage system with fast SLC operation | |
US11450400B2 (en) | Controller and operating method thereof | |
US8498160B2 (en) | Nonvolatile memory device and related programming method using selective bit line precharging | |
US9672940B1 (en) | Non-volatile memory with fast read process | |
US11036582B2 (en) | Uncorrectable error correction code (UECC) recovery time improvement | |
CN106205702B (zh) | 对编程故障自动响应的非易失性存储装置 | |
US20200098439A1 (en) | Memory system, operation method thereof, and nonvolatile memory device | |
US11967387B2 (en) | Detrapping electrons to prevent quick charge loss during program verify operations in a memory device | |
CN108986861B (zh) | 对非易失性存储器装置进行编程的方法 | |
US11532364B2 (en) | Controller and operation method thereof | |
CN113892141A (zh) | 存储器、存储器的编程方法及编程验证方法、存储器系统 | |
WO2023246931A1 (en) | Memory device, memory system, and operating method thereof | |
CN113936721A (zh) | 存储器系统、存储器装置和操作存储器装置的方法 | |
US11848054B2 (en) | Memory device determining precharge time based on a number of times that a program voltage is applied to word line and operating method of memory device | |
CN114974364A (zh) | 存储器及其编程方法、存储器系统 | |
US11538538B1 (en) | Apparatus and methods for smart verify with neighbor plane disturb detection | |
US20240168648A1 (en) | Memory controller and operation method thereof, and memory system | |
US20230420062A1 (en) | Memory device, memory system, and operating method thereof | |
US20230342029A1 (en) | Memory device, a memory system and an operation method | |
US20240126478A1 (en) | Memory systems and operation methods thereof, memory controllers and memories |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |