CN102201261B - 一种多阶单元半导体存储器编程装置及编程方法 - Google Patents
一种多阶单元半导体存储器编程装置及编程方法 Download PDFInfo
- Publication number
- CN102201261B CN102201261B CN201010144770.5A CN201010144770A CN102201261B CN 102201261 B CN102201261 B CN 102201261B CN 201010144770 A CN201010144770 A CN 201010144770A CN 102201261 B CN102201261 B CN 102201261B
- Authority
- CN
- China
- Prior art keywords
- character
- program voltage
- programmed
- voltage level
- level
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 239000004065 semiconductor Substances 0.000 title claims description 27
- 230000008878 coupling Effects 0.000 claims description 26
- 238000010168 coupling process Methods 0.000 claims description 26
- 238000005859 coupling reaction Methods 0.000 claims description 26
- 230000009471 action Effects 0.000 claims description 21
- 230000008859 change Effects 0.000 claims description 10
- 230000008521 reorganization Effects 0.000 claims 3
- 238000010586 diagram Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 9
- 238000012360 testing method Methods 0.000 description 4
- 230000001174 ascending effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000036039 immunity Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Abstract
一种于多位阶电荷捕捉存储器阵列中储存资料的方法。在待编程的资料上执行出现率(例如是频率)的分析,以识别结合高编程电压和高出现频率的资料字符。这些字符被再分配以减少编程时间。
Description
技术领域
本发明的实施例是有关于一种半导体存储器,且特别是关于一种编程(programming)半导体存储器的方法。
背景技术
电荷捕捉存储器(意指闪存)是广泛地应用于各种电子装置。例如相机,手机、个人数字助理,调制解调器及笔记型计算机等各类产品。电荷捕捉存储器可储存相对大量的资料于相对的小空间。储存于电荷捕捉存储器中的资料即使施加的电源消失仍可保持其完整性。
电荷捕捉存储单元可由修改与其相关的临界电压来被编程。由施加参考电压及侦测电流准位可从存储单元中读取资料。单位阶存储单元(single-level cell SLC)可编程至二个可区别的临界准位之一以储存一位信息。当此存储单元支持四或八个可区别的临界准位,此存储单元即可各别地储存二或三位的资料。可储存超过一位资料的存储单元被视为多阶存储单元(multi-level cell,MLC)。
编程(例如是写入)电荷捕捉存储器所需时间可与从存储器中读取所需时间做相对地广泛比较。当应用于资料需要被尽快储存的相关电子装置(例如数字相机),冗长的编程时间会妨碍存储器的操作效率而降低电子装置的整体效能。
所以存在于电荷捕捉存储器中减少编程时间的需求于先前的技术中。
发明内容
本发明的实施例由提供编程多阶电荷捕捉存储器单元阵列的方法来满足这个需求。根据此阵列的原始操作(例如是预定匹配定义),每一不同字符被匹配至不同的编程电压准位,且具相同值的字符以相同的编程电压准位被编程。根据本发明实施例的方法,接收一组待编程的字符,计算此组待编程字符中,每一不同字符的出现数以决定对应每一不同字符的频率数,且修正匹配(根据阵列的原始操作),使得所述不同字符中至少一个的编程电压准位被改变。
其它事情为相同,较高的编程电压准位需要同量的较长编程时间。本发明实施例的特征是以不增加编程此组待编程字符的时间的方式来修改匹配。根据此方法的一实现方式,此修改动作可实际上减少编程此组待编程字符所需要的时间。
本方法的一特别实施例由产生第一列表,该第一列表包括以电压增加的顺序排列的编程电压准位,和产生第二列表,此第二列表包括以频率数减少的顺序排列的一些不同字符。在此,于第二列表的一些字符一对一对应于第一列表的一些编程电压准位。第二列表中的每一字符关联至第一列表中相对应的编程电压准位,且依据对应的定义定义交换规则。
当已经或将会为了具有文法通顺的功能说明的目的来描述装置和方法,则可明显的了解权利要求范围,除非另有说明,否则由“方法”或“步骤”限制的解释不被理解为任何必要限制方式,而是是被授与该意义的全部范围和由在等效司法原则下权利要求范围所提供的等效定义。
本发明提供一种多阶单元半导体存储器编程方法,包括:
在一多阶电荷捕捉存储器单元阵列中,每一不同字符被匹配至不同的编程电压准位,且具有相同值的字符以相同的编程电压准位被编程;其中,所述字符由所述多阶电荷捕捉存储器单元阵列中单个存储器单元能够存储的多个二进制位组成;
接收一组待编程字符;
计算该组待编程字符中,每一不同字符的出现数以决定对应所述不同字符的频率数;以及
修改匹配的关系,使得所述不同字符中频率数高的字符匹配至所述不同的编程电压准位中一编程电压较低的编程电压准位;
其中修改匹配的关系的步骤包括:
产生一第一列表,该第一列表包括以电压增加的顺序排列的编程电压准位;
产生一第二列表,该第二列表包括以频率数减少的顺序排列的所述不同字符,使得于该第二列表的所述不同字符一对一对应于该第一列表的所述编程电压准位;以及
将该第二列表中的每一字符关联至该第一列表中相对应的编程电压准位,且依据对应的关系定义一交换规则。
本发明还提供一种多阶单元半导体存储器编程方法,包括:
在一多阶电荷捕捉存储器单元阵列中,每一不同字符被匹配至不同的编程电压准位,且具有相同值的字符以相同的编程电压准位被编程;其中,所述字符由所述多阶电荷捕捉存储器单元阵列中单个存储器单元能够存储的多个二进制位组成;
接收一组待编程字符;
一计算动作,计算该组待编程字符中,每一不同字符的出现数;以及
一修改动作,修改匹配关系,使得所述不同字符中频率数高的字符匹配至所述不同的编程电压准位中一编程电压较低的编程电压准位;
其中修改匹配的关系的步骤包括:
产生一第一列表,该第一列表包括以电压增加的顺序排列的编程电压准位;
产生一第二列表,该第二列表包括以频率数减少的顺序排列的所述不同字符,使得于该第二列表的所述不同字符一对一对应于该第一列表的所述编程电压准位;以及
将该第二列表中的每一字符关联至该第一列表中相对应的编程电压准位,且依据对应的关系定义一交换规则。本发明又提供
一种多阶单元半导体存储器编程装置,包括:
匹配模块,用于在一多阶电荷捕捉存储器单元阵列中,将每一不同字符被匹配至不同的编程电压准位,且具有相同值的字符以相同的编程电压准位被编程;其中,所述字符由所述多阶电荷捕捉存储器单元阵列中单个存储器单元能够存储的多个二进制位组成;
接收模块,用于接收一组待编程字符;
计算模块,用于计算该组待编程字符中,每一不同字符的出现数以决定对应所述不同字符的频率数;以及
修改匹配模块,用于修改匹配的关系,使得所述不同字符中频率数高的字符匹配至所述不同的编程电压准位中一编程电压较低的编程电压准位;
其中所述修改匹配模块包括:
第一产生模块,用于产生一第一列表,该第一列表包括以电压增加的顺序排列的编程电压准位;
第二产生模块,用于产生一第二列表,该第二列表包括以频率数减少的顺序排列的所述不同字符,使得于该第二列表的所述不同字符一对一对应于该第一列表的所述编程电压准位;以及
关联模块,用于将该第二列表中的每一字符关联至该第一列表中相对应的编程电压准位,且依据对应的关系定义一交换规则。倘若依上下文、说明书和所属技术领域中具有通常知识者的知识而言,于此叙述的任何特征或特征的组合将不致于造成相互不一致的情况下,任何于此叙述的任何特征或特征的组合皆属于在本发明实施例的范围。另外,任一特征或特征组合得以特别地从本发明的任一实施例中排除在外。为了概括说明本发明实施例,描述了本发明实施例中一些方面、优点和新颖特征。当然,我们当可明了不必将所有这些方面的观点、优点或特征包含于本发明任一特定的实施方式之中。鉴于下述详细说明和其后的权利要求范围,当可提出本发明的其它优点及其它的方面。
附图说明
为进一步说明本发明的具体技术内容,下面根据附图和实施例对本发明进行详细说明,其中:
图1是说明用于四位阶电荷捕捉存储器单元(charge-trappingmemory cell CTMC)中编程电压准位的分布图。
图2是总结编程四位阶CTMC与位阶3资料的已知方法的流程图。
图3是说明根据本发明编程四位阶CTMC的第一方法的实现方式的流程图。
图4是描述根据第一方法来读取已被编程的四位阶CTMC的方法的实现方式的流程图。
图5是解释根据本发明编程四位阶CTMC的第二方法的实现方式的流程图。
图6是一装置根据本发明用以从多阶CTMC中编程及读取的方块图。
图7A是说明本发明的方法的图示。
图7B是根据本发明的第二方法来实现编程准位交换的装置的局部示意图。
图7C是根据本发明的第二方法控制从多阶电荷捕捉存储器所做读取动作的装置的示意图。
具体实施方式
以下将详细提出本发明的较佳实施例,并伴随附图说明其范例。应注意的是,附图是以简化形式出现,并非自动假设为作为所有实施例中的精确比例。于附图及说明中尽可能利用相同或类似的标号来提及相同或类似的部件。这表示他们为本发明中不同方面的实现方式的范例,且根据一些但不是全部的实施例,预设为按比例。根据一些实现方式,当依比例解释描述这些附图中的架构,而在其它实现方式中则不用依比例解释这些相同的架构。针对伴随的附图,揭露的内容中采用了指向性词语,例如是顶、底、左、右、上、下、在上面、在上方、下、在下面、后面、以及前面,采用这些词语的目的只为了方便和清楚说明而已。这些指向性词语不应以任何方式用来作为限制本发明的范围。可结合此领域的已知的各种集成电路技术来实作本发明的实施例,而且于此只包括了一些为了理解本明所需而实作上常用的步骤。一般来说,本发明的实施例能应用于半导体装置和方法的领域。然而为了说明目的,以下的说明是针对一存储器装置和其相关方法。
电荷捕捉存储器单元(charge-trapping memory cells CTMCs)的阵列中,存储器单元可由提供编程电压和改变单元中的临界电压Vt来被编程。更精确的说,编程电压产生有足够动能能量的电子以达到和变成撷取于单元中晶体管闸极,其中电子可影响单元中的临界电压Vt。单位阶CTMC可被编程至二编程(例如是编程电压)准位其一,其中多阶CTMC可被编程至,例如是四、八、十六编程准位其一。
图1说明四位阶CTMC的编程准位。根据说明范例,位阶0的Vt分布是对应至未编程或擦除状态,亦即位阶0的临界电压Vt对应至包含“均为1”的资料的多阶CTMC。于图1中,位阶0的临界电压Vt的数值可对应到一对二进制资料数值(例如是字符)11,位阶0的Vt分布可视为分布5或分布10其一。位阶1的Vt分布的值15可对应到字符10,位阶1的Vt分布的值15可能大于第一编程确认准位PV120但小于第二编程确认准位PV225。同样的,例如是位阶2的Vt分布的值30可对应到字符00,位阶2的Vt分布的值30可能大于第二编程确认准位PV225但小于第三编程确认准位PV335。位阶3的Vt分布的值40可能大于第三编程确认准位PV335且可对应到字符01。一般而言,每一个2位字符对应到(例如是匹配至)四编程准位之一。同样的,3位字符对应到八编程准位之一,且对于拥有较大数目的位字符也是如此。
图1中所说明的字符与编程准位的关系可被称为“编码架构(codescheme)”(例如是芯片中的编码架构),而编码架构是用来规定输入资料位(例如是字符)怎么被转化(例如是储存或编程)至物理存储器(例如为编程准位)。例如,根据特定范例,字符11可对应到编程准位0,字符10可对应到编程准位1,以此类推。每一不同字符因此直接的(且唯一的)与不同编程准位相关联(例如是匹配),这代表具相同值字符(例如是所有的字符10)于阵列中被编程至相同电压准位。此详细编码架构于图1中说明,且图1可被认为是一个“原始”(例如是预定匹配定义或芯片特有)编码架构的范例,此编码架构定义字符和预定匹配定义所匹配的编程准位的对应关系,概述如下表1:
表1
(原有编码架构)
此编码架构是被称为“原始”,因为此架构是直接的与CTMC阵列关联,例如是对此阵列没有考虑其它因素。当编程准位按升幂顺序排列,可根据(下述的)相同顺序排列其构成字符来定义编码架构。例如,表1的原始编码架构可排列为{11,10,00,01}。于此揭露中,许多可能性的原始编码架构可被写为如表2所绘示的{n0,n1,n2,n3}。
表2
所揭露的范例,除非另有说明,否则{n0,n1,n2,n3}={11,10,00,01}。(本文中所使用排列于括号内的项目(例如是字符)的顺序,除非另有说明,否则不可轻易变动。也就是说,若{a,b,c,d}={e,f,g,h},则可明了a=e,b=f,c=g,以及d=h。)
当然,可建构许多种四位阶的原始编码架构。也就是说,四可使用字符之一可被选为n0;则随着n0选定,剩余三字符中之一可被选为n1;以此类推。可发现存在4×3×2×1=4!=24种可能的4位阶原始编码架构。例如,其它可能的原始编码架构包括{n0,n1,n2,n3}={00,01,10,11}和{n0,n1,n2,n3}={11,00,10,01}。本发明可帮助应用具有使用任一此类原有编码架构的多阶CTMC存储器装置。进一步的说,对于此领域中具有通常知识者而言,可将描述于此的方法和装置修改为应用具有使用8位阶,16位阶,以及更高位阶的多阶CTMC阵列。
表2第一列的字符,可被假想为指示配置于CTMC阵列内部的虚拟“微编程者”根据此字符(例如是下述原始编码架构中的字符)来修改位于指定地址单元的Vt。也就是说,当微编程者接收n0,它不会做任何事。当微编程者接收n1,它将修改位于指定地址单元的Vt至准位1,以此类推。相反的,当从多阶CTMC阵列中读取具有准位0单元的Vt,将此Vt读为n0,而将具有准位1单元的Vt读为n1,以此类推。
编程多阶CTMC至特定编程准位,例如是PV1,可包括使用至少一脉冲的编程电压(例如是单次脉冲)至单元的步骤,此单次脉冲被选择以小量的电压(例如是5mV)来增加单元的临界电压Vt。可执行感测步骤以确定晶体管的临界电压是大于或等于PV1。上述操作可重复,提供所需的额外单次脉冲,直到大于或等于情况满足。驱动电路可用于提供编程电压,而感测放大器(sense amplifier,SA)可用以执行感测步骤。根据示范实施例,每一SA有一对应的驱动器与其关联。因此于阵列中每一单元由SA和对应驱动器可被编程至任一编程准位。
实务上的限制,例如是编程电流(program current)限制和抗噪性(noise immunity),将限制多阶CTMC架构中同一时间内可允许启用的驱动器和SAs的数量。例如,实务上不可同时操作超过64个SAs和对应的驱动器。这个限定数量不是固定的。例如在另一实施例中,实务上有可能可同时使用128个SAs和对应的驱动器。
图2是说明编程多阶CTMC与准位3字符的已知方法的实施例的流程图。例如,一组256个、512个、或是1024个四进位(例如是四准位)字符{11,10,00,01}(例如是1001110101…)(可根据表1解释CTMC)于步骤100中被接收。说明实施例中,此方法为了编程从此组已接收字符中选择准位3的数值。于步骤105中,执行计算以计算出此组已接收字符中准位3字符(例如是10)的数目N3。根据基本实施例,128个SAs是为任一时间可被动用的SA数目。于步骤110,执行一测试动作以确定此组已接收字符中准位3字符的数量是否至少为128个。若如此,则选择128个待编程至准位3的单元,且在步骤115由单次脉冲将所选择的128个单元编程至阵列中128个所选定的准位3单元。在步骤120中,执行测试动作以确定所有128个所选择的准位3单元实际上是否已完成Vt至少为,例如是PV3的要求。若非如此,则此单元可在步骤115中接收另一次单次脉冲,此115和120步骤被重复直到此组中所有单元的Vt是至少为PV3。则N3的数值可在步骤125中减少128,且此操作从步骤110重复。当N3的数值变成小于128,则在步骤127执行测试动作以确定N3是否大于0。若如此,则执行步骤130和135(例如是上述步骤120和115)直到所有N3个单元已被编程至规定的准位。当再也没有为在步骤110或步骤135中所确定的尚待编程至准位3的单位时,则此实施例完成。而编程单位至准位1和准位2的方法,对于此领域中具有通常知识者基于上述说明是显而易见的。
使用,例如是128个SA/驱动,去完成编程存储器装置至准位k(k=1,2和3)的所需时间总量Tk是至少近似下述乘积
1)Ts,去执行每一单次脉冲且确认结果的所需时间总量,
2)Nk,去完成编程单位至准位k的所需单次脉冲的数量,以及
3)[Nck/128],其中Nck是待编程至准位k的单位的数量,且包围着“.”的运算“.”当“.”不是整数时,运算“.”的整数结果加1。例如,若Nck=129,则[Nck/128]=2,且若0<Nck<=128,则[Nck/128]=1。
T1,T2,以及T3的方程式为:
T1=Ts*N1*[Nc1/128]
T2=Ts*N2*[Nc2/128]
T3=Ts*N3*[Nc3/128]
当比较T1,T2,以及T3的数值时,Ts为T1,T2,以及T3所共有而可被忽略。考虑N1,N2,以及N3,第3表列出实验所得的Nk(k=1,2,3)的最大,最小以及中间数值。编程单元至,例如是,编程准位3的动作可包括提供一具有相对低准位PV3’(例如是阶段1)的第一次脉冲,之后提供具有相对高准位PV3(例如是阶段2)的第二次脉冲,其中PV3’<PV3。编程时间或取样窗的考量可能影响阶段1与阶段2编程准位的选择。额外的阶段(例如是阶段3,阶段4,…)在一些情况下可被使用。使用Nk的中间数值且忽略Ts。
表3
T3-160[NC3/128]
T2-144[NC2/128]
T1-112[NC1/128]
其中“-”代表“成正比”。
基本范例中,考虑接收一组256个四进位(例如是2bit)字符,此256个四进位字符中有50个待编程至准位0、36个待编程至准位1、40个待编程至准位2、以及130个待编程至准位3。在这个范例中,
T3-160×2=320
T2-144×1=144
T1-112×1=112,而
合计编程时间需要T1+T2+T3-320+144+112=576。
此基本范例中,此组字符若包含的是130个准位0而不是130个准位3的字符,则可减少或节省编程时间和资源。本发明实施例的特征是试图由一种方法,例如是再分配编程准位(而字符依此编程准位储存),以达到此类减少或节省时间和资源的目的。举例来说,再分配(例如是经过修正的匹配)可包括以可改善编程效率的方式来分配字符至编程电压准位。以所举的例子来说,所有130个01字符可被储存为准位0而不是准位3。当然,此再分配动作基本上将需要一个或多个其它字符按照顺序同样的被再分配,以使字符和编程准位的关系维持其独特性,将于下段说明。
图3是总结本发明实施例第一方法实施例的流程图。一组四进位字符为了被编程至四位阶CTMC阵列而于步骤140被接收。此组字符可包括,例如是256、512、1024或代表字符,例如是一部份的数字影像、通讯簿、或例如是另一组使用者或机器资料。在步骤145中,四个频率数由计算此组不同字符11(NC11),10(NC10),00(NC00),以及01(NC01)的出现数来计算出。相对此基本范例,表4列出表1的字符,编程准位,以及相对每一字符的频率数,如下:
表4
(字符按照原始编码架构的顺序排列)
观察每一输入资料/项目的信息(例如是每一字符)和它是如何被储存至存储器,使用最高编程准位来储存具有最多个的字符可能是浪费的。因此根据本发明实施例的一方面,没有效率的范例由再分配字符至编程准位的方式来修正,例如出现数最高字符(例如是高频率)、或没有效率的分配(编码)至高编程准位的字符,被再分配至较低编程准位。其后,当此组或此组中一部份的字符从CTMC阵列中被读取,相反分配可恢复字符至它们最初格式。
步骤150中说明,于本范例的背景中,由根据字符的频率数{NC11,NC10,NC00,NC01},再分配按频率数降序顺序排列的字符至按电压升幂顺序排列的编程准位。再分配动作之后,一、二、或更多个字符与新编程准位有关联。一般而言,编程准位以电压增加的顺序排列(根据第一列),而字符以频率数减少的顺序排列(根据第二列)以产生举例说明用的信息集合,相对基本范例,于表5中列出其原始编码架构以做为参考。
表5
(储存字符)
根据步骤155,交换规则由定义此组字符再分配的规则而建立,以减少或节省资源(例如是编程时间)。基本范例中,比较表4与表5,交换规则可被想象为列表显示如下的表6的「字符」列。
表6
(交换规则)
此交换规则于步骤165被使用,以编程此组字符至阵列。例如,相对于基本范例,01被编程为准位0,11被编程为准位1,00被编程为准位2(不变),以及10被编程为准位3。
在原始编码架构下,将01写至存储器编程准位3130次是没有效率的(尤其是既然其它编码出现数皆小于50次)。较高/频率数最高字符(例如是01)被匹配至较低/最低编程准位(例如是编程准位0)以节省资源。根据此范例另一方面,最低/较低频率数字符(例如是10)被匹配至较高/最高编程准位(例如是编程准位3)以节省资源。该明了的是,根据本发明实施例的第一方法,修改字符与编程准位的匹配关系是不会增加编程一组待编程字符所需的单次脉冲的次数(编程时间)。
交换规则也可由基本范例中根据第一方法的实施例排列其字符{01,11,00,10}来定义,此实施例指定此规则使用于编程此组输入资料(例如是字符)。一般来说,交换规则可简单的包括排列出按编程电压准位增加的顺序分配的再分配字符。而在步骤165中根据交换规则编程此组字符。交换规则于步骤175可为被写入至CTMC的控制信息(例如是没有提供至交换规则的字符)。另一种可被使用的版本是将按第6表说明顺序排列的字符写入至交换规则。于上述范例中,交换规则可被写为一序列01110010的八位(相同于四字符)。此八位序列可被称为“记录位”或“记录码”。该注意的是,八位记录码根据第一方法可定义交换规则。
根据本发明实施例的第一方法,从已编程的CTMC阵列中读取字符,其可使用的实施例和方法是总结于图4流程图。此字符在步骤180可从阵列中被正常的读取(例如是根据原始编码架构)以产生一组或一组中某部份的已转化字符,例如是字符根据交换规则编程但根据原始编码架构读取。交换规则可在步骤185中被读取,且交换规则的反向(例如是相反或未转化的版本)可在步骤190被应用至此组已转化字符。也就是说,出现于此组以原始编码架构表示的已转化字符,可根据交换规则的对应字符所取代。举个例子,{n0,n1,n2,n3}是于基本例子被{01,11,00,10}取代(表6)。其后,“未转化”的此组字符可在步骤195输出。
根据本发明实施例的另一方面,第二方法可使用相对第一方法实施例的交换规则修改而成的交换规则。根据第二方法,交换规则简单的定义字符再分配,此字符再分配动作编程高频率数字符至准位0。再分配动作空出以前对应到高频率数字符的编程准位(根据原始编码架构),且也空出以前对应到编程准位0的字符。此再分配是由结合空出字符与空出编程准位来完成的。(若高频率数字符已被分配至准位0,则没有再分配被执行)也就是说,本发明实施例的第二方法再分配的前需要最多单次脉冲次数的字符至准位0,而准位0一点也不需要单次脉冲。
图5是总结第二方法实施例的流程图。于步骤200,接收一组四位阶字符,且在步骤205中计算四可区别的字符{11,10,00,01}中每一个的出现的次数{NC11,NC10,NC00,NC01}。在步骤210中,频率数最高字符根据{NC11,NC10,NC00,NC01}被选定。交换规则于步骤215中构成,此交换规则再分配高频率(例如是频率数最高)字符至较低或最低准位(例如是准位0),因此空出的前分配到高频率数字符的编程准位,和空出先前分配至准位0的字符。交换规则由简单的再分配空出的字符至空出的编程准位来完成。此空出的字符于步骤225中根据交换规则被编程,且交换规则(例如是为一记录码)于步骤230中被写入。记录码对应到交换规则的字符,根据第二方法,可构成二位序列的记录位或同样的二位记录码,此二位记录码记录频率数最高字符。于上述基本范例中,从图5实施例所产生的记录码可为01,以指出此组中01是被编程至准位0的字符。基本上,可明了的前被分配到准位0的字符是被编程至频率数最高字符所空出的准位。
读取已被编程的资料可藉由应用第4图总结的方法与读取根据第二方法在步骤185中解释的交换规则来完成。
图6是可实现本发明第二方法的装置实施例的方块图。实施例包括CTMC阵列300,用以根据预定匹配定义(例如是原始编码架构{n0,n1,n2,n3})来与多阶(例如是四位阶)字符被编程。说明实施例还包括输入处理器305,其接收一组待编程字符,于图中标识为Din[n:0],在它们被编程至CTMC阵列300前,根据第二方法来处理字符。输入处理器305可包括最大搜寻模块(max finder module)310、记录码缓存器320、以及第一层改变单元315。输入处理器305中最大搜寻模块310可接收此组待编程字符且可搜寻此组待编程字符以发现频率数最高字符(例如是此组字符中出现数最高字符)。被发现的频率数最高字符可被储存为交换规则(例如是记录码)于记录码缓存器320,且也可被传送到第一层改变单元315,其应用交换规则至此组字符。例如,第一层改变单元315可从记录码缓存器320接收记录码,且可再分配此组字符中记录码的字符至准位0,且可再分配的前分配至位阶0的字符至频率数最高字符空出的准位。已修改的此组字符则可一般的被编程至CTMC阵列300,例如是根据原始编码架构。
所说明的装置还包括感测放大器325、第二层改变单元330、以及一输出缓冲区335,而输出缓冲区335用以输出储存于CTMC阵列300的字符。感测放大器325可根据地址或于地址缓存器中的地址范围(没有绘示)接收一组或一组中一部份的字符(可称为“已转换字符”),此字符对应到根据预定匹配定义和上述说明编程的字符。第二层改变单元330可从感测放大器325接收已转化字符,且可从记录码缓存器320接收记录码。第二层改变单元330可由应用交换规则反转化(例如是恢复)原始的该组输入资料,而交换规则例如是由(a)已转化的输出资料中,取代符合记录码的字符为n0,以及(b)取代n0的字符为记录码。第二层改变单元330可传送已恢复字符至输出缓冲区335,其可输出已恢复字符。
图7A是提供本发明实施例的实现方式的另一观点的图示。根据此观点,在多阶(例如是4位阶)电荷捕捉存储器中编程准位0,1,2或3,根据本发明实施例的第一方法或第二方法其一,由一对一映像至各自的编程准位0’,1’,2’或3’。回到表4所说明的范围,准位0由映像器352被映像至准位1’;准位1由映像器352被映像至准位3’;准位2被映像至准位2’;以及准位3被映像至准位0’。由改变映像器352,本发明实施例的第二方法可被实现,使得准位3被映像至准位0’,以及准位0被映像至准位3’。准位1与2各别被映像至准位1’与2’。
图7B是可实现本发明第二方法的观点的装置的局部示意图。所说明装置可包括各别的第一、第二、与第三多工器360、365、以及370。每一个多工器可被用以接收二输入信号,对应到准位0的第一输入信号,以及对应到准位3(360),准位2(365)或准位1(370)中其一的第二输入信号。每一个多工器,更可由记录码输入所控制,并根据准位3、准位2或准位1中任一个编程准位与准位0相交换,其中记录码可为1或0。例如,第一多工器360接收所输入的准位0与准位3,准位0与准位3之一被选为3’,第一多工器360的输出是根据控制输入记录码3的状态。当记录码3=0,准位3’可为准位3;当记录码3=1,准位3’可为准位0。同样的,第二多工器365接收所输入的的准位0与准位2,且根据控制输入记录码2的状态可选择输出准位2’为准位0或准位2。当记录码2=0,准位2’可为准位2;当记录码2=1,准位2’可为准位0。同样的,准位1’的输出根据记录码1的数值可为准位0或准位1其一。
图7C是根据本发明实施例的第二方法,来加快从多阶(例如是4位阶)电荷捕捉存储器中读取速度的装置的局部示意图。所说明的装置包括具有一对应到准位0’的输入与对应到准位0、1、2以及3的四输出之一的解多工器(demultiplexer)375,对应到原始编程准位的准位0、1、2以及3在编程准位被交换使用前所使用,例如,图7B中的多工器360、365、以及370。输入准位0’信号根据4位记录码[3:1]的数值可被映像至原始编程准位。记录码[3:1]的可允许数值为000、001、010、或100以选择被映像至准位0’的原始编程准位。记录码[3:1]数值0表示在编程过程中没有发生编程准位的交换。因此,在读取时也不需要交换动作。
考虑编程的范例,参考图7B与图7C,假设对应到资料位的准位1在输入资料位的收集中具有发生率的最大频率。则,根据本发明的第二方法,对应到准位0的输入字符可被编程为准位1字符,对应到准位1的输入字符可被编程为准位0字符(例如,没有全部编程),准位2输入字符可被编程为准位2字符,以及准位3输入字符可被编程为准位3。在图7B与图7C的语言中,记录码3=0、记录码2=0、以及记录码1=1表示准位3’=准位3、准位2’=准位2、准位1’=准位0(例如是没有编程)。该明了的是,准位0’=准位1。
关于读取已编程的资料,根据上述范例,参考图7C,记录码[3:1]=001,其导致解多工器375的输出变为准位1。因此,从电荷捕捉存储器所读取的准位0资料是可被取代为对应至准位1的资料,且从电荷捕捉存储器中所读取的准位1资料可被取代为对应至准位0的资料。
虽然揭露于说明书的内容称为一些说明实施例,该明了的是,这些实施例是以例子的方式呈现,而不是以构成限制的方式存在。此说明书的意义,是去涵盖该领域中具有通常知识者利用与本发明相关的知识所能构成的实施例,以涵盖所有针对本发明所做的修改、变动、组合、交换、删除、替换、二者择一以及实施例的同等物的范围,本发明揭露的范围不会互相独立,而本发明的精神与范围仅座落于权利要求范围所限制的范围里。
Claims (19)
1.一种多阶单元半导体存储器编程方法,包括:
在一多阶电荷捕捉存储器单元阵列中,每一不同字符被匹配至不同的编程电压准位,且具有相同值的字符以相同的编程电压准位被编程;其中,所述字符由所述多阶电荷捕捉存储器单元阵列中单个存储器单元能够存储的多个二进制位组成;
接收一组待编程字符;
计算该组待编程字符中,每一不同字符的出现数以决定对应所述不同字符的频率数;以及
修改匹配的关系,使得所述不同字符中频率数高的字符匹配至所述不同的编程电压准位中一编程电压较低的编程电压准位;
其中修改匹配的关系的步骤包括:
产生一第一列表,该第一列表包括以电压增加的顺序排列的编程电压准位;
产生一第二列表,该第二列表包括以频率数减少的顺序排列的所述不同字符,使得于该第二列表的所述不同字符一对一对应于该第一列表的所述编程电压准位;以及
将该第二列表中的每一字符关联至该第一列表中相对应的编程电压准位,且依据对应的关系定义一交换规则。
2.如权利要求1所述的多阶单元半导体存储器编程方法,其中:
较高的编程电压准位需要相称地较长的编程时间;以及
修改匹配的关系不会增加编程该组待编程字符所需的时间。
3.如权利要求2所述的多阶单元半导体存储器编程方法,其中修改匹配的关系会减少编程该组待编程字符所需的时间。
4.如权利要求1所述的多阶单元半导体存储器编程方法,还包括:
根据对应的关系来编程该组待编程字符;以及
写入该交换规则。
5.如权利要求4所述的多阶单元半导体存储器编程方法,还包括:
读取该交换规则;
从该多阶电荷捕捉存储器单元阵列中,撷取该组已编程字符中的至少一部分;以及
根据该交换规则,恢复该部分。
6.一种多阶单元半导体存储器编程方法,包括:
在一多阶电荷捕捉存储器单元阵列中,每一不同字符被匹配至不同的编程电压准位,且具有相同值的字符以相同的编程电压准位被编程;其中,所述字符由所述多阶电荷捕捉存储器单元阵列中单个存储器单元能够存储的多个二进制位组成;
接收一组待编程字符;
一计算动作,计算该组待编程字符中,每一不同字符的出现数;以及
一修改动作,修改匹配关系,使得所述不同字符中频率数高的字符匹配至所述不同的编程电压准位中一编程电压较低的编程电压准位;
其中修改匹配的关系的步骤包括:
产生一第一列表,该第一列表包括以电压增加的顺序排列的编程电压准位;
产生一第二列表,该第二列表包括以频率数减少的顺序排列的所述不同字符,使得于该第二列表的所述不同字符一对一对应于该第一列表的所述编程电压准位;以及
将该第二列表中的每一字符关联至该第一列表中相对应的编程电压准位,且依据对应的关系定义一交换规则。
7.如权利要求6所述的多阶单元半导体存储器编程方法,其中:
该计算动作包括计算出一高频率数字符;以及
该修改动作包括匹配该高频率数字符至一较低编程电压准位。
8.如权利要求6所述的多阶单元半导体存储器编程方法,其中:
在该修改动作前,一最低准位字符被匹配至一较低编程电压准位;
在该修改动作前,一高频率数字符被匹配至一第一编程电压准位;
该修改动作匹配该最低准位字符至该第一编程电压准位;以及
该方法还包括根据该修改动作匹配的关系来编程该组待编程字符。
9.如权利要求6所述的多阶单元半导体存储器编程方法,还包括:
得到所述交换规则;
从该多阶电荷捕捉存储器单元阵列中,撷取该组已编程字符中的至少一部分;以及
根据该交换规则,恢复该部分字符。
10.如权利要求6所述的多阶单元半导体存储器编程方法,其中该修改动作包括匹配一高频率数字符至该多阶电荷捕捉存储器单元阵列的一最低编程电压准位。
11.一种多阶单元半导体存储器编程装置,包括:
匹配模块,用于在一多阶电荷捕捉存储器单元阵列中,将每一不同字符被匹配至不同的编程电压准位,且具有相同值的字符以相同的编程电压准位被编程;其中,所述字符由所述多阶电荷捕捉存储器单元阵列中单个存储器单元能够存储的多个二进制位组成;
接收模块,用于接收一组待编程字符;
计算模块,用于计算该组待编程字符中,每一不同字符的出现数以决定对应所述不同字符的频率数;以及
修改匹配模块,用于修改匹配的关系,使得所述不同字符中频率数高的字符匹配至所述不同的编程电压准位中一编程电压较低的编程电压准位;
其中所述修改匹配模块包括:
第一产生模块,用于产生一第一列表,该第一列表包括以电压增加的顺序排列的编程电压准位;
第二产生模块,用于产生一第二列表,该第二列表包括以频率数减少的顺序排列的所述不同字符,使得于该第二列表的所述不同字符一对一对应于该第一列表的所述编程电压准位;以及
关联模块,用于将该第二列表中的每一字符关联至该第一列表中相对应的编程电压准位,且依据对应的关系定义一交换规则。
12.如权利要求11所述的多阶单元半导体存储器编程装置,其中:
所述修改匹配模块用以改变该频率数最高字符的匹配定义,改编程该频率数最高字符至一较低编程电压准位。
13.如权利要求12所述的多阶单元半导体存储器编程装置,其中所述修改匹配模块用以改变频率数最高字符的匹配定义,改编程该频率数最高字符至一最低编程电压准位。
14.如权利要求11所述的多阶单元半导体存储器装置,其中:所述修改匹配模块用以改变高频率数字符的匹配定义,改编程该高频率数字符至一最低编程电压准位。
15.如权利要求11所述的多阶单元半导体存储器编程装置,其还包括:用以将高频率数字符像记录码一样写入存储器的模块。
16.如权利要求11所述的多阶单元半导体存储器编程装置,其还包括:
一最大搜寻模块,该最大搜寻模块被用以搜寻该组待编程字符以发现一频率数最高字符,且该最大搜寻模块被用以将该频率数最高字符像记录码一样写入存储器;
一第一层改变单元,该第一层改变单元被用以接收该组待编程字符和该记录码,且第一层改变单元修改该频率数最高字符的匹配定义使得该频率数最高字符被匹配至一最低编程电压准位。
17.如权利要求11所述的多阶单元半导体存储器编程装置,其中该电荷捕捉存储器单元阵列被用以储存四位阶资料。
18.如权利要求11所述的多阶单元半导体存储器编程装置,还包括:
一记录码缓存器用以储存该记录码。
19.如权利要求11所述的多阶单元半导体存储器编程装置,还包括:
一些感测放大器,用以根据一预定匹配定义从该多阶电荷捕捉存储器单元阵列中接收一组已编程字符;以及
一第二层改变单元,被用以从所述感测放大器中接收该组已编程字符和一记录码,以及根据该记录码恢复该组已编程字符。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010144770.5A CN102201261B (zh) | 2010-03-22 | 2010-03-22 | 一种多阶单元半导体存储器编程装置及编程方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010144770.5A CN102201261B (zh) | 2010-03-22 | 2010-03-22 | 一种多阶单元半导体存储器编程装置及编程方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102201261A CN102201261A (zh) | 2011-09-28 |
CN102201261B true CN102201261B (zh) | 2015-03-04 |
Family
ID=44661869
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010144770.5A Expired - Fee Related CN102201261B (zh) | 2010-03-22 | 2010-03-22 | 一种多阶单元半导体存储器编程装置及编程方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102201261B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5907855A (en) * | 1996-10-15 | 1999-05-25 | Micron Technology, Inc. | Apparatus and method for reducing programming cycles for multistate memory system |
US6963501B2 (en) * | 2003-10-10 | 2005-11-08 | Kabushiki Kaisha Toshiba | Nonvolatile memory |
CN101149974A (zh) * | 2006-09-20 | 2008-03-26 | 旺宏电子股份有限公司 | 非易失性存储器的制造方法、写入方法及读取方法 |
WO2009084797A1 (en) * | 2007-12-27 | 2009-07-09 | Indilinx Co., Ltd. | Flash memory device and flash memory programming method equalizing wear-level |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7855913B2 (en) * | 2008-06-10 | 2010-12-21 | Micron Technology, Inc. | Dynamically configurable MLC state assignment |
-
2010
- 2010-03-22 CN CN201010144770.5A patent/CN102201261B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5907855A (en) * | 1996-10-15 | 1999-05-25 | Micron Technology, Inc. | Apparatus and method for reducing programming cycles for multistate memory system |
US6963501B2 (en) * | 2003-10-10 | 2005-11-08 | Kabushiki Kaisha Toshiba | Nonvolatile memory |
CN101149974A (zh) * | 2006-09-20 | 2008-03-26 | 旺宏电子股份有限公司 | 非易失性存储器的制造方法、写入方法及读取方法 |
WO2009084797A1 (en) * | 2007-12-27 | 2009-07-09 | Indilinx Co., Ltd. | Flash memory device and flash memory programming method equalizing wear-level |
Also Published As
Publication number | Publication date |
---|---|
CN102201261A (zh) | 2011-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102143086B1 (ko) | 동적 슈퍼 블록을 포함하는 메모리 장치 및 관련 방법 및 전자 시스템 | |
KR100977899B1 (ko) | 비휘발성 메모리 시스템에서 아웃-오브-시퀀스 기록 프로세스를 효과적으로 수행하기 위한 방법 및 장치 | |
JP5660615B2 (ja) | マルチビットメモリ装置を含んだデータ格納システム及びそれの動作方法 | |
CN101339538B (zh) | 使用页结构的数据树存储方法、系统和计算机程序产品 | |
KR102025263B1 (ko) | 메모리 시스템 및 그것의 읽기 교정 방법 | |
CN101868829B (zh) | 用于m位存储器单元的m+n位编程和m+l位读取 | |
CN101719100B (zh) | 用于非易失性存储器的基于压缩的耗损均衡 | |
US9361167B2 (en) | Bit error rate estimation for wear leveling and for block selection based on data type | |
KR102503177B1 (ko) | 메모리 시스템 및 그것의 동작 방법 | |
US8417879B2 (en) | Method for suppressing errors, and associated memory device and controller thereof | |
US9582224B2 (en) | Memory control circuit unit, memory storage apparatus and data accessing method | |
KR101824227B1 (ko) | 메모리 시스템 및 그것의 프로그램 방법 | |
KR20110092090A (ko) | 불 휘발성 메모리 장치 및 그것을 포함한 메모리 시스템 | |
CN110489360B (zh) | 存储器控制器及该存储器控制器的操作方法 | |
CN110310691B (zh) | 存储器系统中的工作负载预测及其方法 | |
US10990539B2 (en) | Controller, memory system including the same, and method of operating memory system | |
CN101630289A (zh) | 存储器控制器、存储器系统及用于存储器系统的控制方法 | |
TW201730772A (zh) | 資料儲存裝置及其資料維護方法 | |
US10712970B2 (en) | Flash memory controller and associated accessing method and electronic device | |
CN110532195A (zh) | 存储器系统的工作负荷分簇及执行其的方法 | |
CN110120240A (zh) | 存储器系统及其操作方法 | |
CN103106148A (zh) | 区块管理方法、存储器控制器与存储器存储装置 | |
CN102201261B (zh) | 一种多阶单元半导体存储器编程装置及编程方法 | |
CN106406746B (zh) | 映射表存取方法、存储器控制电路单元及存储器存储装置 | |
CN111951871A (zh) | 存储器装置、包括存储器装置的存储器系统及其操作方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150304 |
|
CF01 | Termination of patent right due to non-payment of annual fee |