CN102592673A - Programming method of memory device - Google Patents

Programming method of memory device Download PDF

Info

Publication number
CN102592673A
CN102592673A CN2011100215283A CN201110021528A CN102592673A CN 102592673 A CN102592673 A CN 102592673A CN 2011100215283 A CN2011100215283 A CN 2011100215283A CN 201110021528 A CN201110021528 A CN 201110021528A CN 102592673 A CN102592673 A CN 102592673A
Authority
CN
China
Prior art keywords
programming
bias voltage
bits
program
memory device
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
Application number
CN2011100215283A
Other languages
Chinese (zh)
Inventor
蔡富凯
刘建宏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Macronix International Co Ltd
Original Assignee
Macronix International Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Macronix International Co Ltd filed Critical Macronix International Co Ltd
Priority to CN2011100215283A priority Critical patent/CN102592673A/en
Publication of CN102592673A publication Critical patent/CN102592673A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Read Only Memory (AREA)

Abstract

A method of programming a memory device includes a plurality of bits, each bit having a plurality of program states, wherein each program state has a corresponding Program Verify (PV) level. The method comprises the following steps: applying a first sequence of program shots to program the fastest bit of the memory device with a bias voltage having a maximum value corresponding to each program state being programmed; reducing the bias voltage to apply a second sequence of program shots to program fast bits of the memory device for N program shots; and increasing the bias voltage for a programming shot greater than N to program the slow bit of the memory device.

Description

一种存储器装置的编程方法A programming method for a memory device

技术领域 technical field

本发明的实施例是有关于多层单元式(multi-level cell,MLC)存储器装置的编程,且特别是有关于一种存储器装置的编程方法,用以增加关于MLC存储器装置的编程速度并对读取窗口进行控制。Embodiments of the present invention relate to programming of a multi-level cell (multi-level cell, MLC) memory device, and in particular to a programming method of a memory device, for increasing the programming speed of the MLC memory device and for Read window for control.

背景技术 Background technique

已知的快闪存储单元将电荷储存在可能譬如是掺杂多晶硅的浮动栅极上。内储电荷改变存储单元的阈值电压(Vt)。在「读取」操作中,是将读取电压施加至存储单元的栅极,而存储单元是否导通的相对应指示(例如,传导电流)表示存储单元的编程状态。举例而言,在「读取」操作期间传导电流的存储单元可能被指定为「1」的数字值,而在「读取」操作期间并未传导电流的存储单元可能被指定为「0」的数字值。可将电荷添加至浮动栅极,并将电荷移离浮动栅极,用以编程并擦除存储单元(例如,用以将存储单元数值从「1」改变成「0」)。Known flash memory cells store charge on a floating gate, which may be, for example, doped polysilicon. The stored charge changes the threshold voltage (Vt) of the memory cell. In a "read" operation, a read voltage is applied to the gate of the memory cell, and a corresponding indication of whether the memory cell is on (eg, conducting current) indicates the programmed state of the memory cell. For example, a memory cell that conducts current during a "read" operation may be assigned a digital value of "1," while a memory cell that does not conduct current during a "read" operation may be assigned a digital value of "0." numeric value. Charge can be added to and removed from the floating gate for programming and erasing the memory cell (eg, to change the value of the memory cell from "1" to "0").

另一种型式的存储器使用一种电荷捕捉构造,而非使用于浮动栅极装置中的导电栅材料。电荷捕捉构造可具有一个或多个单元(cell),每一单元包含一电荷捕捉层与一非导电层。当此种型式的构造被编程时,可能在电荷捕捉层中捕捉到一电荷,以能使其不会移动通过非导电层。电荷可能通过电荷捕捉层而被维持,直到擦除存储单元为止,以在不需要施加一种连续的电力源的情况下维持数据状态。这些电荷捕捉单元可被操作为双面单元(two-sided cells)。换言之,因为电荷并未移动通过非导电电荷捕捉层,所以可将电荷局部控制在不同的电荷捕捉地段。因此,可能构建所谓的多位单元(multi-bit cell,MBC),其可增加可被储存于存储器装置中的数据量而不需要浪费更多空间。Another type of memory uses a charge trapping structure rather than the conductive gate material used in floating gate devices. The charge trapping structure may have one or more cells, and each cell includes a charge trapping layer and a non-conductive layer. When this type of configuration is programmed, a charge may be trapped in the charge trapping layer so that it does not move through the nonconductive layer. Charge may be maintained through the charge trapping layer until the memory cell is erased to maintain the data state without the need to apply a continuous power source. These charge trapping cells can be operated as two-sided cells. In other words, because the charge does not move through the non-conductive charge trapping layer, the charge can be locally controlled at different charge trapping locations. Thus, it is possible to construct so-called multi-bit cells (MBCs), which can increase the amount of data that can be stored in a memory device without wasting more space.

起初MBC可具有一种擦除状态Vt分布,且存储器的每个位可能接着被编程至一种目标的编程状态。目标编程状态的Vt分布可具有一种相关的编程确认(PV)电平(例如,下边界)。为了具有编程位的紧密的Vt分布,可将关于目标编程状态的预先PV电平可能设定成低于PV电平,并可执行包含一粗糙编程操作(rough program operation)与一精细编程操作(fineprogram operation)的两步骤的编程操作。然而,编程一般只聚焦在下边界的位置上,而不需要留意上边界,而上边界可能影响较快速位。因此,可能期望发展一种用以增加关于MLC存储器装置的编程速度与控制读取窗口的程序,用以使对编程分布的负面影响最小化。Initially the MBC may have an erased state Vt distribution, and each bit of the memory may then be programmed to a target programmed state. The Vt distribution of the target program state may have an associated program verify (PV) level (eg, lower boundary). In order to have a tight Vt distribution of programming bits, the pre-PV level for the target programming state may be set lower than the PV level, and a rough program operation and a fine program operation ( fineprogram operation) two-step programming operation. However, programming generally only focuses on the location of the lower boundary, without paying attention to the upper boundary, which may affect faster bits. Therefore, it may be desirable to develop a process for increasing the programming speed and controlling the read window for MLC memory devices in order to minimize the negative impact on the programming distribution.

发明内容 Contents of the invention

因此,提供本发明的实施例,其可致能一种用以编程一存储器装置(例如,MLC存储器装置)的方法的提供,此存储器装置会留意上边界的位置。因此,举例而言,当增加编程速度时,可能控制读取窗口裕度(read windowmargins)。在某些实施例中,可能通过增加在慢速位的编程期间所施加的偏压,以减少最快速位的过度编程的可能性,同时仍然增加编程慢速位的速度而更快速地编程慢速位。Accordingly, embodiments of the present invention are provided which enable the provision of a method for programming a memory device, such as an MLC memory device, which takes care of the position of the upper boundary. Thus, for example, it is possible to control read window margins when increasing programming speed. In some embodiments, it is possible to program slow bits more quickly by increasing the bias voltage applied during programming of slow bits to reduce the likelihood of overprogramming of fastest bits, while still increasing the speed at which slow bits are programmed. Speed bit.

在一实施示范例中,提供一种存储器装置的编程方法。存储器装置可包含多个位,每个位具有多个编程状态,于其中每个编程状态具有一对应的编程确认(program verify,PV)电平。此方法可包括施加一第一顺序的编程击发(program shot)用以利用具有对应于被编程的各个编程状态的一最大值的一偏压来编程存储器装置的最快速位,降低偏压以施加一第二顺序的编程击发以编程存储器装置的快速位到达N个编程击发,以及增加供大于N的编程击发用的偏压以编程存储器装置的慢速位。In an exemplary embodiment, a programming method of a memory device is provided. The memory device may include a plurality of bits, each bit having a plurality of programming states, wherein each programming state has a corresponding program verify (PV) level. The method may include applying a first sequence of program shots to program the fastest bits of the memory device with a bias having a maximum value corresponding to each programmed state being programmed, reducing the bias to apply A second sequence of programming shots to program the fast bits of the memory device up to N programming shots, and increasing the bias for programming shots greater than N to program the slow bits of the memory device.

本领域技术人员应理解到上述的一般说明与下述的详细说明是仅具有例示的目的,且并未意图限制本发明的范畴。It should be understood by those skilled in the art that the foregoing general description and the following detailed description are for illustrative purposes only and are not intended to limit the scope of the present invention.

为了对本发明的上述及其它方面有更佳的了解,下文特举实施例,并配合所附图式,作详细说明如下:In order to have a better understanding of the above and other aspects of the present invention, the following specific examples, together with the attached drawings, are described in detail as follows:

附图说明 Description of drawings

图1显示依据本发明的一实施示范例的存储器阵列的电荷捕捉存储器的一般结构;FIG. 1 shows the general structure of a charge trapping memory of a memory array according to an exemplary implementation of the present invention;

图2显示依据本发明的一实施示范例的图1的电荷捕捉存储器的每个储存侧的Vt窗口;FIG. 2 shows Vt windows of each storage side of the charge trapping memory of FIG. 1 according to an exemplary implementation of the present invention;

图3显示首先采用粗糙编程阶段,紧接着精细编程阶段的例子的两步骤编程;Figure 3 shows the two-step programming of an example using a coarse programming phase first, followed by a fine programming phase;

图4显示依据本发明的一实施示范例的留意高边界的位置的示范编程顺序;FIG. 4 shows an exemplary programming sequence for paying attention to the location of high margins according to an exemplary implementation of the present invention;

图5显示依据本发明的一实施示范例的关于图2中的每个编程状态对每一侧的编程操作Vd偏压(或BL偏压)与编程脉冲击发;FIG. 5 shows the programming operation Vd bias (or BL bias) and programming pulse firing for each side of each programming state in FIG. 2 according to an exemplary implementation of the present invention;

图6显示依据本发明的一实施示范例的关于图2所显示的每个编程状态对每一侧的示范程序流程图;以及FIG. 6 shows an exemplary program flow diagram for each side of each programming state shown in FIG. 2 in accordance with an exemplary implementation of the present invention; and

图7为依据本发明一实施示范例的与增加关于MLC存储器装置的编程速度与控制读取窗口的一示范方法相关的操作流程图。7 is a flowchart of operations associated with an exemplary method of increasing programming speed and controlling read windows for MLC memory devices in accordance with an exemplary implementation of the present invention.

【主要元件符号说明】[Description of main component symbols]

10:电荷捕捉存储单元10: Charge Trapping Memory Unit

12:衬底12: Substrate

14、16:区域14, 16: Area

18、22:氧化层区域18, 22: oxide layer area

20:电荷捕捉层20: Charge trapping layer

24:栅极24: grid

26:左储存侧26: left storage side

28:右储存侧28: Right storage side

100、110、150、160、170:分布100, 110, 150, 160, 170: Distribution

120:Vt分布120: Vt distribution

200、202、204、206、208、210、212、214、216、300、305、310、330:操作步骤200, 202, 204, 206, 208, 210, 212, 214, 216, 300, 305, 310, 330: Operation steps

具体实施方式 Detailed ways

现在将参考附图更完全说明本发明的某些实施例于下,其中显示本发明的某些实施例而非所有可实施的态样。的确,本发明的各种不同的实施例可能以许多不同的形式被具体化,且不应被解释为受限于于此所提出的实施例;相反地,这些实施例的提供是能使这个说明书将满足适用的法律需求。举例而言,于此可能针对例如垂直、水平、对角线、右、左、前、后、侧面等等的方向与方位作出参考基准;然而,本领域技术人员应注意到任何方向与方位参考基准只是例子,且任何特定方向或方位可取决于特定物体,及/或特定物体的方位,利用其可作出方向或方位参考基准。Certain embodiments of the present invention will now be described more fully hereinafter with reference to the accompanying drawings, in which some but not all possible aspects of the invention are shown. Indeed, various embodiments of the invention may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; The instructions will satisfy applicable legal requirements. For example, references may be made herein to directions and orientations such as vertical, horizontal, diagonal, right, left, front, rear, sideways, etc.; however, those skilled in the art should note that any directional and orientation references Datums are examples only, and any particular direction or orientation may depend on a particular object, and/or the orientation of a particular object, with which a direction or orientation reference datum may be made.

本发明的某些实施例可提供一种用以增加关于MLC存储器装置的编程速度与控制读取窗口的程序,用以使对编程分布的负面影响最小化。图1显示一种电荷捕捉存储单元10的一例子。如图1所示,电荷捕捉存储单元10可包含一栅极24以及与一半导体通道或衬底12连通的对称源极/漏极区域(例如,S/D区域14与16)。衬底12与栅极24可能通过绝缘层(例如,分别为氧化层区域18与22)而与一电荷捕捉层20分离。于此例子组态中,电荷捕捉层20的左储存侧26可能被编程,而电荷捕捉层20的右储存侧28可能被编程。Certain embodiments of the present invention may provide a procedure to increase the programming speed and control the read window on MLC memory devices to minimize the negative impact on the programming distribution. FIG. 1 shows an example of a charge trapping memory cell 10 . As shown in FIG. 1 , charge trapping memory cell 10 may include a gate 24 and symmetric source/drain regions (eg, S/D regions 14 and 16 ) in communication with a semiconductor channel or substrate 12 . Substrate 12 and gate 24 may be separated from a charge trapping layer 20 by insulating layers (eg, oxide regions 18 and 22, respectively). In this example configuration, the left storage side 26 of the charge trapping layer 20 may be programmed, and the right storage side 28 of the charge trapping layer 20 may be programmed.

所显示的左储存侧26与右储存侧28可能被编程至四个状态(亦即,状态00、01、10与11)的其中一个,以储存两个位的数据。因为电荷的累积为多位编程的一项重要特征(有更精确的电荷配置在电荷捕捉层20中),所以可能正确达到较高的位数与状态数。一般可譬如通过施加一电位至栅极24而编程一特定位,其中S/D区域14与16的其中一个(例如,区域16)用以作为一漏极,而S/D区域14与16的另一个(例如,区域14)用以作为一源极。位于特定侧的电荷的累积改变左储存侧26或右储存侧28的阈值电压(threshold voltage)。举例而言,为了读取数值01(又称为电平1),所施加的电位可能在电平1分布的最右边的点与电平2分布的最左边的点之间。电位可能必须遵从这些基准的数值的区域或窗口被称为「读取窗口」。The shown left storage side 26 and right storage side 28 may be programmed to one of four states (ie, states 00, 01, 10, and 11) to store two bits of data. Because charge accumulation is an important feature of multi-bit programming (more precise charge distribution in the charge trapping layer 20), it is possible to correctly achieve higher bit and state numbers. A particular bit can generally be programmed, such as by applying a potential to gate 24, wherein one of S/D regions 14 and 16 (e.g., region 16) serves as a drain, and the other of S/D regions 14 and 16 The other (eg, region 14) is used as a source. Accumulation of charge on a particular side changes the threshold voltage of either the left storage side 26 or the right storage side 28 . For example, to read the value 01 (aka level 1), the applied potential may be between the rightmost point of the level 1 distribution and the leftmost point of the level 2 distribution. The region or window in which the potential must conform to the values of these references is called the "read window".

图2显示依据一实施示范例的每个储存侧的Vt窗口。如显示于图2中,于每一侧有四个状态(01、00、10与11)。此外,每个状态具有包含一下边界(PV)与一上边界(或高边界)(PV′)的分布。关于可靠的读取操作,读取确认电压(RD1、RD2、RD3)可基于关于数值01、00、10与11的分布的上边界与下边界而被动态调整。FIG. 2 shows Vt windows for each storage side according to an example implementation. As shown in Figure 2, there are four states (01, 00, 10 and 11) on each side. In addition, each state has a distribution that includes a lower bound (PV) and an upper bound (or upper bound) (PV'). For reliable read operations, the read verify voltages ( RD1 , RD2 , RD3 ) can be dynamically adjusted based on the upper and lower bounds for the distribution of values 01 , 00 , 10 and 11 .

图3显示首先采用粗糙编程阶段紧接着精细编程阶段的示范两步骤编程。如图3所示,在粗糙编程阶段中,多个位被编程至一预先PV电平,其是低于PV电平某些偏移。在粗糙编程阶段期间,在一些编程击发之后,存储器的位是被编程以具有Vt分布,于其中某些位具有至少与目标编程状态的预先PV电平一样高的Vt电平,而其它位具有低于预先PV电平的Vt电平。此存储器可记录通过的位,而未通过的那些位可能通过使用精细编程阶段而更进一步地被编程。Figure 3 shows exemplary two-step programming with a coarse programming phase followed by a fine programming phase. As shown in FIG. 3, in the coarse programming phase, bits are programmed to a pre-PV level, which is some offset below the PV level. During the coarse programming phase, after some programming shots, the bits of the memory are programmed to have a Vt distribution in which some bits have a Vt level at least as high as the pre-PV level of the target programming state, while other bits have A Vt level lower than the pre-PV level. This memory can record the bits that passed, while those that failed could be programmed even further by using the fine programming stage.

在精细编程阶段中,可能施加更细微偏压以确定所有位通过PV电平,以便维持相当紧密的Vt分布。在图3中,分布100表示未被编程状态的Vt分布,分布110表示在粗糙编程阶段之后的Vt分布,而分布120表示在精细编程阶段之后的Vt分布。如图3所示,在粗糙编程阶段之后,最快速位可能被编程并影响高边界,直到通过PV电平为止。这些最快速位由于它们正被编程亦可影响编程分布。因此,依据此例,高边界的位置并未十分被留意,而紧密分布几乎完全凭靠精细编程阶段。In the fine programming phase, finer biases may be applied to determine all bit pass PV levels in order to maintain a fairly tight Vt distribution. In FIG. 3, distribution 100 represents the Vt distribution for the unprogrammed state, distribution 110 represents the Vt distribution after the coarse programming phase, and distribution 120 represents the Vt distribution after the fine programming phase. As shown in Figure 3, after the coarse programming phase, the fastest bits may be programmed and affect the high boundary until the PV level is passed. These fastest bits can also affect the programming distribution as they are being programmed. Therefore, according to this example, the location of the high margin is not very well noticed, and the tight distribution depends almost entirely on the fine programming stage.

图4显示依据一实施示范例的留意高边界的位置的示范编程顺序。如图4所示,在粗糙编程与精细编程两者之后,高边界(PV’)是相同的。在这点上,分布150表示未被编程状态的Vt分布,分布160表示在粗糙编程阶段之后的Vt分布,而分布170表示在精细编程阶段之后的Vt分布。图4的Vt分布160是相对于图3的Vt分布120而更加紧密。FIG. 4 shows an exemplary programming sequence for paying attention to the location of high margins according to an example implementation. As shown in Figure 4, the high margin (PV') is the same after both coarse and fine programming. In this regard, distribution 150 represents the Vt distribution for the unprogrammed state, distribution 160 represents the Vt distribution after the coarse programming phase, and distribution 170 represents the Vt distribution after the fine programming phase. The Vt distribution 160 of FIG. 4 is tighter than the Vt distribution 120 of FIG. 3 .

在粗糙编程阶段期间,由于通过PV’电平的那些位,最快速位可能在正好一个或两个击发中被编程。在精细编程阶段期间,可能相对于只有未通过PV电平的存储器的位执行编程。虽然高边界会被留意,但在精细编程阶段期间,高边界仍然可能被影响且编程速度可能略微较慢。如果产生高边界改变,则可能难以控制读取窗口。因此,通过动态调整读取确认电平,实施示范例可达到供MLC存储器用的可靠的读取比率的增加。During the coarse programming phase, the fastest bits may be programmed in exactly one or two shots due to those bits passing the PV' level. During the fine programming phase, programming may be performed with respect to only bits of memory that fail the PV level. Although the high margins are taken care of, during the fine programming phase the high margins may still be affected and the programming speed may be slightly slower. If high boundary changes are produced, it may be difficult to control the read window. Thus, by dynamically adjusting the read acknowledge level, exemplary implementations can achieve a reliable increase in read rates for MLC memory.

图5显示关于图2中的每个编程状态(例如,10、00与01)对每一侧的编程操作Vd偏压(或BL偏压)与编程脉冲击发。如可在图5中看到的,最快速位可利用被施加而相继增加的Vd偏压而被编程以在一个或两个击发中通过PV’。当编程其它较快速位时,Vd偏压可减少并可维持相当的电平,直到N个编程击发已被执行为止,于此N可被编程速度所控制。同时,Vd偏压可维持于相当低的电平,用以减少影响高边界的这些较快速位的概率。关于慢速位的编程,可能增加所施加的编程Vd偏压以便增加速度。然而,如图5所示,在慢速位的编程期间所施加的Vd的最高数值无法超过在最快速位的编程期间所施加的Vd的最高数值。通过采用图5所显示的程序,可能降低于先前编程确认操作失败的的过度编程的较快速位的可能性,且可能增加编程速度。FIG. 5 shows the programming operation Vd bias (or BL bias) and programming pulse firing for each side in FIG. 2 for each programming state (eg, 10, 00, and 01). As can be seen in Figure 5, the fastest bits can be programmed to pass PV' in one or two shots with successively increasing Vd biases applied. When programming other faster bits, the Vd bias can be reduced and maintained at a comparable level until N programming shots have been performed, at which point N can be controlled by the programming speed. At the same time, the Vd bias can be maintained at a relatively low level to reduce the probability of these faster bits affecting the high border. Regarding the programming of slow bits, it is possible to increase the applied programming Vd bias in order to increase the speed. However, as shown in FIG. 5, the highest value of Vd applied during the programming of the slow bits cannot exceed the highest value of Vd applied during the programming of the fastest bits. By employing the procedure shown in FIG. 5, it is possible to reduce the possibility of over-programming faster bits that fail previous program verify operations, and to increase the programming speed.

图6显示关于图2所显示的每个编程状态(例如10、00与01)对每一侧的示范程序流程图。如图6所示,所有位首先可能被检查以查看它们是否于操作步骤200中通过PV,藉以采用一预先编程确认检查以决定是否有需要被编程的位。如果所有位通过,则不需要执行更进一步的编程。然而,如果某些位并未通过,则此程序可能继续进行至可能执行粗糙编程的操作步骤202。于操作步骤202下,可能增加一粗糙编程脉冲以采用一粗糙Vd编程分布图(BL偏压),直到存在有通过PV’的一个位为止,且编程击发数目是受限于一个或两个击发。关于是至少一位否通过PV’的检查可能于操作步骤204下被达成。于此编程位群组中被编程的位(或多个位)为最快速位。一种粗糙Vd或Vg编程分布图的选择可能以试图确保通过的至少一位很靠近PV’电平的方式被达成。FIG. 6 shows an exemplary program flow diagram for each side for each of the programming states shown in FIG. 2 (eg, 10, 00, and 01). As shown in FIG. 6, all bits may first be checked to see if they pass PV in operation 200, thereby using a pre-program verification check to determine if there are bits that need to be programmed. If all bits pass, no further programming is required. However, if some bits do not pass, the process may continue to operation step 202 where coarse programming may be performed. At operation 202, a coarse programming pulse may be added to employ a coarse Vd programming profile (BL bias) until there is a bit through PV' and the number of programming shots is limited to one or two shots . A check as to whether at least one bit passes PV' may be done under operation 204. The bit (or bits) being programmed in this programming bit group is the fastest bit. A selection of coarse Vd or Vg programming profiles may be achieved in an attempt to ensure that at least one bit is passed very close to the PV' level.

在一个位通过PV’之后,于操作步骤206下,可能增加第一精细Vd编程脉冲,且可能维持下BL偏压,直到编程脉冲击发的数目于操作步骤208下到达数值N为止。编程速度可由N个脉冲击发的数值的选择所控制。在这段期间,可能编程其它快速位。在编程其它快速位之后,可能于操作步骤210通过增加一第二精细编程脉冲并提高或增加Vd(BL偏压)的数值来编程较慢速位。于操作步骤212,可能再做出确保至少一位通过PV的检查。如果至少一位已于操作步骤212被编程,则经由第二精细编程脉冲增加的慢速位编程可能于操作步骤214继续,其是通过维持BL偏压直到一项检查于操作步骤216通过用以确认所有位通过PV为止。同时,如果至少一位并未于操作步骤212被编程,则可能增加BL偏压,其是通过经由操作步骤210的重新循环直到一位是被编程并通过PV为止。After a bit passes PV', at operation 206, the first fine Vd programming pulse may be added, and the lower BL bias may be maintained until the number of programming pulse firings reaches the value N at operation 208. The programming speed can be controlled by the selection of the value of N pulse firing. During this time, other fast bits may be programmed. After programming other fast bits, slower bits may be programmed in operation 210 by adding a second fine programming pulse and raising or increasing the value of Vd (BL bias). In operation 212, a check may be made to ensure that at least one bit passes the PV. If at least one bit has been programmed at operation 212, slow bit programming via second fine program pulse increments may continue at operation 214 by maintaining the BL bias until a check is passed at operation 216 for Confirm that all bits pass PV so far. Meanwhile, if at least one bit is not programmed at operation 212, the BL bias may be increased by re-looping through operation 210 until a bit is programmed and passes PV.

因此,某些实施示范例可控制供快闪存储装置用的读取窗口裕度并增加编程速度。最快速位可能通过使用一个或两个编程击发而被编程,直到一个位通过PV’为止,然后,可能减少并维持BL偏压同时编程其它快速位,直到N个编程击发(N是被选择以控制编程速度)为止。通过降低BL偏压,可能降低使较快速位促成高边界的可能性。然后,慢速位编程可能通过增加BL偏压,但同时使最大BL偏压维持在用来编程最快速位的BL偏压之下而达成。因此,可能降低过度编程的较快速位的可能性,且可能增加编程速度。Therefore, certain example implementations can control the read window margin for flash memory devices and increase programming speed. The fastest bits may be programmed using one or two programming shots until a bit passes PV', then the BL bias may be reduced and maintained while programming the other fast bits until N programming shots (N is chosen to be control programming speed). By reducing the BL bias, the likelihood of faster bits contributing to high margins may be reduced. Slow bit programming may then be achieved by increasing the BL bias while maintaining the maximum BL bias below the BL bias used to program the fastest bits. Thus, the likelihood of overprogramming faster bits may be reduced, and programming speed may be increased.

图7为依据一实施示范例的与增加关于MLC存储器装置的编程速度与控制读取窗口的一示范方法相关的操作流程图。本领域技术人员应理解流程图的每个方块以及流程图中的方块的组合可通过各种不同的机制(例如在一操作员的控制之下或经由硬件、韧体,及/或包含一个或多个计算机程序指令的软件)而实施。举例而言,于此所说明的一个或多个程序可能通过计算机程序指令的执行(具有或不具有来自操作人员的贡献)而具体化。在这点上,将上述程序的计算机程序指令具体化,是可能通过存储器而储存并通过处理器而执行。如将明白的,任何这样的计算机程序指令可能被加载至计算机或其它可编程设备(亦即,硬件)之上以产生一机器,以使在计算机或其它可编程设备上执行的指令构建用以执行流程图方块中所详载的功能的装置。这些计算机程序指令亦可被储存于一计算机可读取电子储存存储器,其可指示一计算机或其它可编程设备以一特定方式产生功能,以使储存于计算机可读取存储器的指令产生包含实现流程图方块中所详载的功能的指令手段的制造的物品。计算机程序指令亦可被加载至计算机或其它可编程设备之上,用以使一系列的操作在计算机或其它可编程设备上执行以产生计算机实施程序,以使在计算机或其它可编程设备上执行的指令提供用以执行流程图方块中所详载的功能的操作。7 is a flowchart of operations associated with an exemplary method of increasing programming speed and controlling read windows for MLC memory devices, according to an exemplary implementation. Those skilled in the art will understand that each block of the flowchart and combinations of blocks in the flowchart can be implemented by various mechanisms (such as under the control of an operator or via hardware, firmware, and/or including one or software of a plurality of computer program instructions). For example, one or more of the procedures described herein may be embodied through the execution of computer program instructions (with or without human contribution). In this regard, computer program instructions embodying the above-mentioned program may be stored by a memory and executed by a processor. As will be appreciated, any such computer program instructions may be loaded onto a computer or other programmable device (i.e., hardware) to produce a machine such that the instructions executed on the computer or other programmable device are configured to Means for performing the functions detailed in the flowchart blocks. These computer program instructions can also be stored in a computer-readable electronic storage memory, which can instruct a computer or other programmable equipment to function in a specific way, so that the instructions stored in the computer-readable memory generate including implementation procedures An article of manufacture by means of instructions for the functions detailed in the figure block. Computer program instructions can also be loaded onto a computer or other programmable device to enable a series of operations to be executed on the computer or other programmable device to generate a computer-implemented program for execution on the computer or other programmable device. The instructions provide operations for performing the functions detailed in the flowchart blocks.

因此,流程图的方块支持用以执行特定功能的装置的组合,用以执行特定功能的操作的组合,以及用以执行特定功能的程序指令装置。本领域技术人员亦将理解到流程图的一个或多个方块以及流程图中的方块的组合可通过特殊目的硬件式计算机系统(其执行特定功能或操作,或特殊目的硬件与计算机指令的组合)而实现。Accordingly, blocks of the flowchart support combinations of means for performing the specified functions, combinations of operations for performing the specified functions and program instruction means for performing the specified functions. Those skilled in the art will also understand that one or more blocks of the flowchart illustrations, and combinations of blocks in the flowchart illustrations, can be implemented by special purpose hardware-based computer systems (which perform the specified functions or operations, or combinations of special purpose hardware and computer instructions) And realize.

如图7所示,依据一个例子的用以增加关于MLC存储器装置的编程速度与控制读取窗口的方法可包含:于操作步骤300下,施加一第一顺序的编程击发以利用具有对应于被编程的各个编程状态的最大值的偏压来编程存储器装置的最快速位;于操作步骤310下,降低偏压用以施加一第二顺序的编程击发以编程存储器装置的快速位达到N个编程击发;以及于操作步骤330下,增加对于大于N的编程击发的偏压以编程存储器装置的慢速位。As shown in FIG. 7 , according to an example, the method for increasing the programming speed and controlling the read window for an MLC memory device may include: under operation 300, applying a first sequence of programming shots to utilize programming the fastest bits of the memory device at a bias voltage of the maximum value of each programming state; at operation 310, lowering the bias voltage to apply a second sequence of programming shots to program the fastest bits of the memory device up to N programming firing; and at operation 330, increasing the bias voltage for the program firing greater than N to program the slow bits of the memory device.

在某些实施例中,上述操作可能如下所述被修正或被放大。此外,在某些情况下,除了上述讨论的那些以外,可能实施更进一步的操作,其中的一例是以虚线显示于图7中。某些或所有的修改、放大及/或额外操作可能以任何顺序与以每个可能的组合而在某些实施例中结合。举例而言,在某些情况下,此方法可更包含在继续第二顺序的操作步骤310之前,于操作步骤305下检查以查看一个位是否通过一上部编程确认边界(PV’)。在某些实施例中,增加关于大于N的编程击发的偏压可包含使偏压增加了第一累进数量并决定额外位是否通过PV。在一实施示范例中,增加对于大于N的编程击发的偏压可包含只要附加位通过PV,就维持第一累进数量。在某些实施例中,增加关于大于N的编程击发的偏压可包含使偏压增加了第二累进数量,以因应没有通过PV的额外位。在一实施示范例中,增加关于大于N的编程击发的偏压可包含使偏压增加,直到增加了各个累进数值为止,但使偏压维持在对应于被编程的各个编程状态的最大值以下。N的数值可能基于一期望的编程速度而被选择。存储器装置可能是一多层单元式(MLC)存储器装置或一电荷捕捉存储器装置。在某些情况下,施加第一顺序的编程击发可包含施加一个或两个编程击发。在一实施示范例中,施加第一顺序的编程击发可包含施加偏压,以使偏压增加,而使在第一顺序的编程击发中所施加的每一个编程击发到达最大值。在某些实施例中,施加第一顺序的编程击发可包含采用一粗糙编程操作,降低偏压以施加第二顺序的编程击发可包含采用一第一精细编程操作,以及增加关于大于N的编程击发的偏压可包含采用一第二精细编程操作。In some embodiments, the operations described above may be modified or amplified as described below. Furthermore, in some cases further operations than those discussed above may be performed, an example of which is shown in dashed lines in FIG. 7 . Some or all of the modifications, amplifications, and/or additional operations may be combined in certain embodiments in any order and in every possible combination. For example, in some cases, the method may further include checking under operation 305 to see if a bit passes an upper program verify boundary (PV') before continuing with operation 310 of the second sequence. In some embodiments, increasing the bias voltage for program firings greater than N may include increasing the bias voltage by a first incremental amount and determining whether the additional bit passes through the PV. In an example implementation, increasing the bias for program firings greater than N may include maintaining the first incremental amount as long as additional bits pass through the PV. In some embodiments, increasing the bias voltage for programming fires greater than N may include increasing the bias voltage by a second incremental amount to account for the extra bits not passing through the PV. In an example implementation, increasing the bias for programming shots greater than N may include increasing the bias until each incremental value is increased, but maintaining the bias below a maximum value corresponding to each programmed state being programmed. . The value of N may be selected based on a desired programming speed. The memory device may be a multi-level cell (MLC) memory device or a charge trapping memory device. In some cases, applying the first sequence of programming shots can include applying one or two programming shots. In an example implementation, applying the first sequence of programming shots may include applying a bias voltage such that the bias voltage is increased such that each programming shot applied in the first sequence of programming shots reaches a maximum value. In some embodiments, applying a first sequence of programming shots may include employing a coarse programming operation, lowering the bias to apply a second sequence of programming shots may include employing a first fine programming operation, and increasing programming for greater than N Biasing for firing may include employing a second fine programming operation.

本领域技术人员当知,于此所提出的实施例的修改与其它实施例,仍可具有上述说明与相关图式中所提供的教导的益处。因此,本领域技术人员应理解到本发明并非受限于所揭露的具体实施例,且修改型式与其它实施例是亦包含在随附权利要求范围之内。此外,虽然上述说明与相关图式在元件及/或功能的某些例示组合的上下文中说明例示实施例,但本领域技术人员应该明白元件及/或功能的不同的组合可能在不背离随附权利要求范围之下通过替代实施例而被提供。在这点上,举例而言,除上述所详细说明的那些以外的元件及/或功能的不同的组合亦被考虑可能在某些随附权利要求范围中被提出。虽然于此采用特定的用语,但它们只为了限制的目的与不为了限制的目的而以一种普通且描述性意义被使用。Modifications to the embodiments set forth herein, as well as other embodiments, will be appreciated by those skilled in the art while still having the benefit of the teachings provided in the foregoing description and associated drawings. Therefore, those skilled in the art will appreciate that the invention is not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. In addition, although the above description and associated drawings illustrate exemplary embodiments in the context of certain exemplary combinations of elements and/or functions, those skilled in the art will appreciate that different combinations of elements and/or functions are possible without departing from the accompanying drawings. Alternative embodiments are provided below the scope of the claims. In this regard, for example, different combinations of elements and/or functions than those specified above are also contemplated as may be presented within the scope of some of the appended claims. Although specific terms are employed herein, they are used in a plain and descriptive sense for purposes of limitation only and not for limitation.

综上所述,虽然本发明已以实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视随附权利要求范围所界定的为准。To sum up, although the present invention has been disclosed by the above embodiments, it is not intended to limit the present invention. Those skilled in the art of the present invention can make various changes and modifications without departing from the spirit and scope of the present invention. Therefore, the protection scope of the present invention should be determined by the appended claims.

Claims (14)

1. the programmed method of a storage arrangement, this storage arrangement comprise a plurality of positions, and each position has a plurality of programming states, and each programming state has a corresponding programming and confirms (PV) level, and this method comprises:
Apply the one or more programmings percussions (program shot) of one first order (first sequence), have corresponding to programme a plurality of positions (fastest bits) the most fast of this storage arrangement of a peaked bias voltage of each programming state that is programmed in order to utilization;
Reduce this bias voltage applying the one or more programmings percussion of one second order (second sequence), reach N programming with a plurality of quick position (fast bits) of this storage arrangement of programming and pull the trigger; And
Increase is about greater than this bias voltage of a plurality of programmings percussion of N a plurality of positions (slow bits) at a slow speed with this storage arrangement of programming.
2. method according to claim 1 is characterized in that, increases about this bias voltage greater than a plurality of programmings percussions of N to comprise: make this bias voltage increase by one first progression quantity and determine whether an extra bits passes through PV.
3. method according to claim 2 is characterized in that, this bias voltage that increases about pulling the trigger greater than those programmings of N comprises: as long as this additional bit is just kept this first progression quantity through PV.
4. method according to claim 2 is characterized in that, increases about these bias voltages greater than those programming percussions of N to comprise: make this bias voltage increase by one second progression quantity, with in response to the extra bits through PV not.
5. method according to claim 2; It is characterized in that; Increase comprises about these bias voltages greater than those programming percussions of N: make this bias voltage increase each progression numerical value, but make this bias voltage maintain corresponding to this of respectively this programming state that is programmed below maximal value.
6. method according to claim 1 is characterized in that, the numerical value of N is based on the program speed of an expectation and is chosen.
7. method according to claim 1 is characterized in that, this memory device is changed to multilevel-cell formula (multi-level cell, MLC) storage arrangement.
8. method according to claim 1 is characterized in that, this memory device is changed to a charge capturing memory device.
9. method according to claim 1 is characterized in that, the programming percussion that applies this first order comprises that only applying one or two programming pulls the trigger.
10. method according to claim 1 is characterized in that, the programming percussion that applies this first order comprises and apply this bias voltage so that this bias voltage increases, and make in the programming percussion of this first order, applied respectively should programming pull the trigger this maximal value of arrival.
11. method according to claim 1 is characterized in that, more is included in to continue inspection before this second order, whether confirms border (PV ') through top programming to check a position.
12. method according to claim 1 is characterized in that, the programming percussion that applies this first order comprises adopts a coarse programming operation (rough programming operation).
13. method according to claim 12 is characterized in that, reduces this bias voltage and comprises employing one first fine program operation (first fineprogramming operation) with the programming percussion that applies this second order.
14. method according to claim 13 is characterized in that, this bias voltage that increases about pulling the trigger greater than those programmings of N comprises employing one second fine program operation (second fineprogramming operation).
CN2011100215283A 2011-01-13 2011-01-13 Programming method of memory device Pending CN102592673A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011100215283A CN102592673A (en) 2011-01-13 2011-01-13 Programming method of memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011100215283A CN102592673A (en) 2011-01-13 2011-01-13 Programming method of memory device

Publications (1)

Publication Number Publication Date
CN102592673A true CN102592673A (en) 2012-07-18

Family

ID=46481183

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011100215283A Pending CN102592673A (en) 2011-01-13 2011-01-13 Programming method of memory device

Country Status (1)

Country Link
CN (1) CN102592673A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103700401A (en) * 2012-09-28 2014-04-02 广明光电股份有限公司 Method for programming and reading flash memory

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101071635A (en) * 2005-11-17 2007-11-14 旺宏电子股份有限公司 Multi-level cell programming method for non-volatile memory
CN101617271A (en) * 2007-02-15 2009-12-30 格斯图尔泰克股份有限公司 Use the enhancing input of flashing electromagnetic radiation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101071635A (en) * 2005-11-17 2007-11-14 旺宏电子股份有限公司 Multi-level cell programming method for non-volatile memory
CN101617271A (en) * 2007-02-15 2009-12-30 格斯图尔泰克股份有限公司 Use the enhancing input of flashing electromagnetic radiation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103700401A (en) * 2012-09-28 2014-04-02 广明光电股份有限公司 Method for programming and reading flash memory

Similar Documents

Publication Publication Date Title
KR101312887B1 (en) Multiple level program verify in a memory device
KR100799018B1 (en) Nonvolatile Memory Device and Self Compensation Method
JP5599145B2 (en) Multi-bit flash memory device and program and read method thereof
US9564237B2 (en) Nonvolatile memory device and read method thereof
JP5330425B2 (en) Nonvolatile semiconductor memory
KR20120098164A (en) Non volatile memory device and operating method thereof
JP6214083B2 (en) Non-volatile memory (NVM) using soft programming
KR101985952B1 (en) Nonvolatile memory device and method for driving the nonvolatile memory device
KR20150094129A (en) Semiconductor device and operating method thereof
KR101026385B1 (en) Operation method of charge trap type flash memory device
US9001576B2 (en) Semiconductor memory device and method of operating the same
EP2690628A1 (en) Methods and systems for adjusting NVM cell bias conditions based upon operating temperature to reduce performance degradation
US20090303792A1 (en) Method for programming a multilevel memory
KR20110065759A (en) Operation method of nonvolatile memory device
CN100587846C (en) Non-volatile memory device with improved erase operation
US9378809B1 (en) Relaxing verification conditions in memory programming and erasure operations
US20120170363A1 (en) Method for increasing program speed and control read windows for multi-level cell non-volatile memory
KR100933858B1 (en) Nonvolatile Memory Devices and Their Bulk Voltage Control Methods
US9007840B2 (en) Semiconductor memory apparatus and program verification method
KR101029654B1 (en) Operation method of nonvolatile memory device
CN102592673A (en) Programming method of memory device
TW201230045A (en) Method for increasing program speed and control read windows for multi-level cell non-volatile memory
US8077513B2 (en) Method and apparatus for programming a multi-level memory
US20240145017A1 (en) Nonvolatile memory device supporting gidl erase operation
KR20080056845A (en) Nonvolatile Semiconductor Memory Device Reduces Erasing Stress and Erasing Time

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20120718