一种存储单元的编程方法、装置、电子设备及存储介质

文档序号:1695618 发布日期:2019-12-10 浏览:13次 >En<

阅读说明:本技术 一种存储单元的编程方法、装置、电子设备及存储介质 (Programming method and device of storage unit, electronic equipment and storage medium ) 是由 贺元魁 潘荣华 马思博 于 2018-06-01 设计创作,主要内容包括:本发明公开了一种存储单元的编程方法、装置及电子设备,该方法包括:对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作;对设定存储单元中除编程校验通过的存储单元进行编程校验;若编程校验均通过,则对所述设定存储单元之外的存储单元继续进行编程操作,否则返回对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作的步骤。通过采用上述技术方案实现了快速将存储单元的阈值电压抬升到较高区域,节省了编程时间。(The invention discloses a programming method and a device of a storage unit and electronic equipment, wherein the method comprises the following steps: performing a programming operation on memory cells in the programming region except for the memory cells passing the program verification; performing programming verification on the memory cells except the memory cells passing the programming verification in the set memory cells; and if the program verification is passed, continuing the programming operation on the memory cells except the set memory cell, otherwise, returning to the step of performing the one-time programming operation on the memory cells except the memory cell passed by the program verification in the programming region. By adopting the technical scheme, the threshold voltage of the storage unit is quickly raised to a higher area, and the programming time is saved.)

一种存储单元的编程方法、装置、电子设备及存储介质

技术领域

本发明实施例涉及存储技术领域,具体涉及一种存储单元的编程方法、装置、电子设备及存储介质。

背景技术

非易失闪存介质(Nand flash)是一种很常见的存储芯片,兼有随机存储器(Random Access Memory,RAM)和只读存储器(Read-Only Memory,ROM) 的优点,数据掉电不会丢失,是一种可在系统进行电擦写的存储器,同时具有改写速度快,存储容量大等优点,被广泛应用到电子产品中。

按照每个存储单元存储数据的位数划分,Nand flash可被分成三类,分别是SLC(Single-Level Cell,单层单元)、MLC(Multi-Level Cell,多层单元) 和TLC(Triple-Level Cell,三层单元),其中,SLC的每个存储单元存储一位 (1bit)数据,MLC的每个存储单元存储2bit数据,TLC的每个存储单元存储 3bit数据。数据的存储是通过控制存储单元阈值电压的分布来实现的,具体参见图1所示的一种TLC的存储单元阈值电压分布示意图,当存储单元的阈值电压落在A区域时,表示存储单元当前存储的数据为001,当存储单元的阈值电压落在B区域时,表示存储单元当前存储的数据为010,……当存储单元的阈值电压落在G区域时,表示存储单元当前存储的数据为111。

因此,要实现TLC存储单元正确存储数据,需要通过复杂的算法控制存储单元的阈值分布。如何快速地使TLC存储单元的阈值电压被编程到预期状态,成为了本领域专业人员共同努力的事情。

发明内容

本发明提供一种存储单元的编程方法、装置、电子设备及存储介质,实现了可以快速将存储单元的阈值电压抬升到较高区域,节省了编程时间。

为实现上述目的,本发明实施例采用如下技术方案:

第一方面,本发明实施例提供了一种存储单元的编程方法,所述方法包括:

对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作;

对设定存储单元中除编程校验通过的存储单元之外的存储单元进行编程校验;

若编程校验均通过,则对所述设定存储单元之外的存储单元继续进行编程操作,否则返回对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作的步骤。

进一步的,所述设定存储单元为编程区域中目标阈值电压分布在较低范围的存储单元。

进一步的,所述对设定存储单元中除编程校验通过的存储单元之外的存储单元进行编程校验包括:

对所述设定存储单元中除编程校验通过的存储单元之外的存储单元逐个进行编程校验,并屏蔽编程校验通过的存储单元。

进一步的,所述对设定存储单元中除编程校验通过的存储单元进行编程校验包括:

对所述设定存储单元中等级最低的存储单元进行编程校验;

若编程校验不通过,则返回执行对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作的步骤;

若编程校验通过,则屏蔽该存储单元,并继续对所述设定存储单元剩余的存储单元中等级最低的存储单元进行编程校验;

重复上述校验结果的判断操作,直到所述设定存储单元的编程校验均通过;

其中,存储单元的等级依据存储单元的目标阈值电压的分布范围划分。

进一步的,所述对设定存储单元之外的存储单元继续进行编程操作,包括:

对所述设定存储单元之外的存储单元继续进行一次编程操作;

屏蔽所述设定存储单元之外的存储单元中等级最低的存储单元;

继续对所述设定存储单元之外的存储单元中剩余的存储单元进行一次编程操作;

屏蔽所述设定存储单元之外的存储单元中剩余的存储单元中等级最低的存储单元;

重复上述继续编程-屏蔽操作,直到所述设定存储单元之外的存储单元中剩余的存储单元为零,结束流程;

其中,所述存储单元的等级依据存储单元的目标阈值电压的分布范围划分。

进一步的,对存储单元进行一次编程操作,包括:

分别向存储单元的栅极以及漏极施加对应的编程电压。

进一步的,对存储单元进行编程校验,包括:

向存储单元的栅极施加对应的读电压;

依据与所述存储单元匹配的灵敏放大器设定节点处的电压值确定编程校验的结果是否为通过。

第二方面,本发明实施例提供了一种存储单元的编程装置,所述装置包括:

第一编程模块,用于对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作;

校验模块,用于对设定存储单元中除编程校验通过的存储单元之外的存储单元进行编程校验;

第二编程模块,用于若编程校验均通过,则对所述设定存储单元之外的存储单元继续进行编程操作;

返回模块,用于若编程校验的结果不是均为通过,返回对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作的步骤。

第三方面,本发明实施例提供了一种电子设备,包括第一存储器、第一处理器及存储在存储器上并可在第一处理器上运行的计算机程序,所述第一处理器执行所述计算机程序时实现如上述第一方面所述的存储单元的编程方法。

第四方面,本发明实施例提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时实现如上述第一方面所述的存储单元的编程方法。

本发明实施例提供的一种存储单元的编程方法,当对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作之后,通过只对设定存储单元进行编程校验,且当编程校验的结果均为通过时,对所述设定存储单元之外的存储单元继续进行编程操作,而不再进行编程校验,实现了可以快速将存储单元的阈值电压抬升到较高区域,节省了编程时间。

附图说明

图1是一种TLC的存储单元阈值电压分布示意图;

图2是本发明实施例一中的一种存储单元的编程方法流程示意图;

图3是本发明实施例一中的一种存储单元块的结构示意图;

图4为本发明实施例一中的一种编程过程示意图;

图5为本发明实施例二中的一种存储单元的编程方法流程示意图;

图6为本发明实施例三中的一种存储单元的编程装置结构示意图;

图7为本发明实施例四提供的一种电子设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图2为本发明实施例一提供的一种存储单元的编程方法流程图,本实施例提供的编程方法可适用于对TLC类的Nand flash进行编程操作。可由存储单元的编程装置执行,该装置可通过软件和/或硬件的方式实现,一般集成在应用 TLC类Nand flash的电子产品中。具体参见图2所示,本实施例提供的存储单元的编程方法具体包括如下步骤:

210、对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作。

其中,所述编程区域具体可以指一个编程页。flash芯片是由内部成千上万个存储单元组成的,多个存储单元组成页,多个页组成块,正是由于该特殊的物理结构,Nandflash以页为单位进行编程操作(或读/写数据),以块为单位进行擦除操作。具体参见图3所示的存储单元块的结构示意图,其中,字线连在一起的存储单元为存储单元页,图3所示的存储单元块包括3个存储单元页。

示例性地,对存储单元进行一次编程操作,包括:

分别向存储单元的栅极以及漏极施加对应的编程电压,即向存储单元的字线以及位线分别施加一次对应的编程电压,目的是为了通过压差改变存储单元浮动栅极上电子的数量,从而实现改变存储单元阈值电压的目的。编程操作是为了使浮动栅极上的电子数量增多,从而抬升存储单元的阈值电压。由于一次编程操作向编程区域存储单元的字线、位线分别施加的编程电压只需持续ns级的时间,因此通常选择通过电荷泵来实现编程电压的施加。

由于第一次进行编程操作时,编程校验通过的存储单元为零,因此第一次编程操作的对象为编程区域中的所有存储单元。

220、对设定存储单元中除编程校验通过的存储单元之外的存储单元进行编程校验。

其中,所述设定存储单元为编程区域中目标阈值电压分布在较低范围的存储单元,所述目标阈值电压指将存储单元的阈值电压抬升之后的期望电压。由于TLC类的Nandflash的每个存储单元可以存储3bit数据,该3bit数据的存储是通过将存储单元的阈值电压抬升至不同的电压范围实现的,参见图1所示的一种TLC的存储单元阈值电压分布示意图,当存储单元的阈值电压落在A区域时,表示存储单元当前存储的数据为001,当存储单元的阈值电压落在B区域时,表示存储单元当前存储的数据为010,……当存储单元的阈值电压落在G 区域时,表示存储单元当前存储的数据为111。所述目标阈值电压分布具体可以是A-G中的任何一个。所述编程区域中目标阈值电压分布在较低范围的存储单元具体可以指目标阈值电压分布在A-C中的任何一个的存储单元。本实施例以所述设定存储单元为目标阈值电压分布在A-C的存储单元为例。

第一次编程校验时,由于校验通过的存储单位为零,所以第一次编程校验的对象为所有的设定存储单元,即目标阈值电压分布在A-C的存储单元。之后每次编程校验只针对所述设定存储单元中编程校验没有通过的存储单元进行。

示例性的,对存储单元进行编程校验,包括:

分别向存储单元的栅极施加对应的读电压;

依据与所述存储单元匹配的灵敏放大器设定节点处的电压值确定编程校验的结果是否为通过,若设定节点处的电压值低于设定值,则确定编程检验的结果为通过。与所述设定存储单元匹配的灵敏放大器的具体结构可参考现有技术,本实施例不再进行详细解释。

示例性的,所述对设定存储单元中除编程校验通过的存储单元进行编程校验包括:

对所述设定存储单元中除编程校验通过的存储单元之外的存储单元逐个进行编程校验,并屏蔽编程校验通过的存储单元。

230、判断编程校验是否均通过,若是则执行步骤240,否则返回执行步骤 210。

240、对所述设定存储单元之外的存储单元继续进行编程操作。

示例性地,所述对设定存储单元之外的存储单元继续进行编程操作,包括:

对所述设定存储单元之外的存储单元继续进行一次编程操作;

屏蔽所述设定存储单元之外的存储单元中等级最低的存储单元;

继续对所述设定存储单元之外的存储单元中剩余的存储单元进行一次编程操作;

屏蔽所述设定存储单元之外的存储单元中剩余的存储单元中等级最低的存储单元;

重复上述继续编程-屏蔽操作,直到所述设定存储单元之外的存储单元中剩余的存储单元为零,结束流程;

其中,所述存储单元的等级依据存储单元的目标阈值电压的分布范围划分。

举例说明上述过程,假设编程区域的所有存储单元的等级包括A-G七个等级,存储单元的等级A-G依据存储单元的目标阈值电压的分布范围划分,参见图1所示。所述设定存储单元为等级A-C的存储单元。因为程序开始时编程校验通过的存储单元为零,所以首先对编程区域所有的存储单元进行一次编程操作,即对等级为A-G的存储单元进行一次编程操作,然后对设定存储单元A-C 等级的存储单元进行编程校验,若校验结果均为通过,则对等级为D-G的存储单元继续进行编程操作,但不再对等级为D-G的存储单元进行编程校验。若存在校验不通过的设定存储单元,则返回步骤210继续对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作。比如等级为A的存储单元校验通过,但是等级为B和C存储单元校验均没有通过,则继续对等级为B-G 的存储单元进行一次编程操作,然后对等级为B和C存储单元进行编程校验,若等级为B的存储单元校验通过,但是等级为C的存储单元校验没有通过,则继续对等级为C-G的存储单元进行一次编程操作,直到等级为C的存储单元校验通过。

之后继续对等级为D-G的存储单元进行编程操作,而不再进行编程校验,具体为:对等级为D-G的存储单元进行一次编程操作,将等级最低(D等级) 的存储单元屏蔽;继续对等级为E-G的存储单元进行一次编程操作,将等级最低(E等级)的存储单元屏蔽;继续对等级为F-G的存储单元进行一次编程操作,将等级最低(F等级)的存储单元屏蔽;继续对等级为G的存储单元进行一次编程操作,然后结束流程,具体参见图4所示的编程过程示意图。

由于存储单元的阈值电压是缓慢被抬升的,因此,可选择性地只对目标阈值电压分布在低范围的存储单元进行编程校验,若编程校验通过,则继续对目标阈值电压分布在高范围的存储单元继续进行编程操作,以将该部分存储单元的阈值电压抬的更高。由于没有对所述设定存储单元之外的存储单元进行编程校验,使得整个编程过程所占用时间更短,编程速度更高。

本实施例提供的一种存储单元的编程方法,当对编程区域的存储单元进行一次编程操作之后,通过只对设定存储单元进行编程校验,若编程校验的结果为通过,则对所述设定存储单元之外的存储单元继续进行编程操作,由于没有对所述设定存储单元之外的存储单元进行编程校验,因此可以快速将存储单元的阈值电压抬升到较高区域,节省了编程时间。

实施例二

图5为本发明实施例二提供的一种存储单元的编程方法流程示意图,在上述实施例的基础上,本实施例针对操作“对设定存储单元中除编程校验通过的存储单元进行编程校验”进行了优化,以进一步提高编程速度。参见图5所示,本实施例提供的存储单元的编程方法具体包括如下步骤:

510、对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作。

520、对设定存储单元中当前等级最低的存储单元进行编程校验。

530、判断编程校验是否通过,则是,则继续执行步骤540,否则返回执行步骤510。

540、屏蔽编程校验通过的存储单元。

550、判断所述设定存储单元的编程校验是否均通过,若是,则执行步骤 560,否则返回执行步骤520。

560、对所述设定存储单元之外的存储单元继续进行编程操作。

举例说明上述过程,假设编程区域的所有存储单元的等级包括A-G七个等级,所述设定存储单元为等级A-C的存储单元。因为程序开始时编程校验通过的存储单元为零,所以首先对编程区域所有的存储单元进行一次编程操作,即对等级为A-G的存储单元进行一次编程操作,然后对设定存储单元(A-C等级的存储单元)中等级最低的存储单元(等级为A的存储单元)进行编程校验,若编程校验结果为通过,则屏蔽等级为A的存储单元,并继续执行步骤520,对等级为B的存储单元进行编程校验;若等级为A的存储单元的编程校验结果为不通过,则放弃对等级为B和C的存储单元进行编程校验,直接返回步骤510 对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作,从而进一步节省了编程时间。若在一次编程校验循环中等级为A的存储单元编程校验的结果为通过,但是等级为B的存储单元的编程校验结果为不通过,则返回步骤510对等级为B-G的存储单元进行一次编程操作,而不再对编程校验通过的等级为A的存储单元进行编程操作,然后对等级为B的存储单元继续进行编程校验……重复上述编程-校验循环,直到设定存储单元的编程校验结果均为通过。设定存储单元的编程校验结果均为通过之后,只对所述设定存储单元之外的存储单元(等级为D-G的存储单元)继续进行编程操作,而不再进行编程校验,对所述设定存储单元之外的存储单元(等级为D-G的存储单元)继续进行编程操作的具体过程可以参考实施例一中的解释,此处不再重复赘述。

等级为D-G的存储单元继续进行编程操作,但不再对等级为D-G的存储单元进行编程校验。若存在校验不通过的设定存储单元,则返回步骤210继续对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作。比如等级为A的存储单元校验通过,但是等级为B和C存储单元校验均没有通过,则继续对等级为B-G的存储单元进行一次编程操作,然后对等级为B和C存储单元进行编程校验,若等级为B的存储单元校验通过,但是等级为C的存储单元校验没有通过,则继续对等级为C-G的存储单元进行一次编程操作,直到等级为C的存储单元校验通过。

之后继续对等级为D-G的存储单元进行编程操作,而不再进行编程校验,具体为:对等级为D-G的存储单元进行一次编程操作,将等级最低(D等级) 的存储单元屏蔽;继续对等级为E-G的存储单元进行一次编程操作,将等级最低(E等级)的存储单元屏蔽;继续对等级为F-G的存储单元进行一次编程操作,将等级最低(F等级)的存储单元屏蔽;继续对等级为G的存储单元进行一次编程操作,然后结束流程,具体参见图4所示的编程过程示意图。

本实施例提供的一种存储单元的编程方法,通过若设定存储单元中等级最低的存储单元的编程校验结果为不通过,则放弃对设定存储单元中其他等级的存储单元的编程校验,直接返回对编程区域中除编程校验通过的存储单元进行一次编程操作的步骤,直到所述等级最低的存储单元的编程校验结果为通过,再对设定存储单元中其他等级的存储单元进行编程校验的技术手段,进一步节省了编程时间,提高了编程速度。

实施例三

图6为本发明实施例三提供的一种存储单元的编程装置结构示意图。参见图6所示,所述装置包括:第一编程模块610、校验模块620、第二编程模块 630和返回模块640;

其中,第一编程模块610,用于对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作;

校验模块620,用于对设定存储单元中除编程校验通过的存储单元之外的存储单元进行编程校验;

第二编程模块630,用于若编程校验均通过,则对所述设定存储单元之外的存储单元继续进行编程操作;

返回模块640,用于若编程校验不是均通过,返回对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作的步骤。

本实施例提供的一种存储单元的编程装置,当对编程区域中除编程校验通过的存储单元进行一次编程操作之后,通过只对设定存储单元进行编程校验,若编程校验均通过,则对所述设定存储单元之外的存储单元继续进行编程操作,而不再对所述设定存储单元之外的存储单元进行编程校验,因此可以快速将存储单元的阈值电压抬升到较高区域,节省了编程时间。

实施例四

图7为本发明实施例四提供的一种电子设备的结构示意图。如图7所示,该电子设备包括:第一处理器770、第一存储器771及存储在第一存储器771 上并可在第一处理器770上运行的计算机程序;其中,第一处理器770的数量可以是一个或多个,图7中以一个第一处理器770为例;第一处理器770执行所述计算机程序时实现如上述实施例一中所述的存储单元的编程方法。如图7 所示,所述电子设备还可以包括第一输入装置772和第一输出装置773。第一处理器770、第一存储器771、第一输入装置772和第一输出装置773可以通过总线或方式连接,图7中以通过总线连接为例。

第一存储器771作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中存储单元的编程装置/模块(例如,存储单元的编程装置中的第一编程模块610和校验模块620等)。第一处理器 770通过运行存储在第一存储器771中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述的存储单元的编程方法。

第一存储器771可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,第一存储器771可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或非易失性固态存储器件。在一些实例中,第一存储器771可进一步包括相对于第一处理器770远程设置的存储器,这些远程存储器可以通过网络连接至电子设备/ 存储介质。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

第一输入装置772可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。第一输出装置773可包括显示屏等显示设备。

实施例五

本发明实施例五还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种存储单元的编程方法,该方法包括:

对编程区域中除编程校验通过的存储单元进行一次编程操作;

对设定存储单元中除编程校验通过的存储单元之外的存储单元进行编程校验;

若编程校验均通过,则对所述设定存储单元之外的存储单元继续进行编程操作,否则返回对编程区域中除编程校验通过的存储单元之外的存储单元进行一次编程操作的步骤。

当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的存储单元的编程相关操作。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器 (Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,存储介质,或者网络设备等)执行本发明各个实施例所述的。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多等效实施例,而本发明的范围由所附的权利要求范围决定。

16页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种存储单元的编程方法、装置、电子设备及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!