首页> 中国专利> 一种用于检验非易失存储单元受干扰的方法及装置

一种用于检验非易失存储单元受干扰的方法及装置

摘要

本发明提供一种用于检验非易失存储单元受干扰的方法,其适用于非易失存储单元,所述方法包括以下步骤:a)设置计数器的计数值为一预设值;b)接收擦除块指令,所述擦除块指令中包含相应擦除块的地址信息;c)根据所述相应擦除块的地址信息执行擦除操作;d)根据计数器的当前计数值以确定所述相应擦除块所在的同一个块组的相应干扰块;e)对所述相应干扰块进行修复操作;f)将计数器的计数值加1,并返回步骤b)。本发明不仅可以节省时间,而且能够及时有效地检验并且修复被干扰的存储单元。同时,芯片在流片后能够大大缩减烧录时间成本,以及时将产品推向给客户。

著录项

  • 公开/公告号CN105702293A

    专利类型发明专利

  • 公开/公告日2016-06-22

    原文格式PDF

  • 申请/专利权人 上海芯泽电子科技有限公司;

    申请/专利号CN201610006347.6

  • 发明设计人 苏香;

    申请日2016-01-06

  • 分类号G11C16/34(20060101);G11C16/14(20060101);

  • 代理机构上海翼胜专利商标事务所(普通合伙);

  • 代理人翟羽

  • 地址 201204 上海市浦东新区毕升路289弄3号楼601室

  • 入库时间 2023-12-18 15:32:47

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-12-13

    专利权的转移 IPC(主分类):G11C16/34 登记生效日:20191125 变更前: 变更后: 申请日:20160106

    专利申请权、专利权的转移

  • 2019-09-17

    授权

    授权

  • 2016-07-20

    实质审查的生效 IPC(主分类):G11C16/34 申请日:20160106

    实质审查的生效

  • 2016-06-22

    公开

    公开

说明书

技术领域

本发明涉及电子领域,尤其涉及一种用于检验非易失存储单元受干扰的方法及装置。

背景技术

NORflash闪存是一种非易失存储器,可以对被称为“块”的存储器单元阵列进行擦写和再编程。任何flash器件的写入操作只能在空或已擦除的单元内进行。所以,在大多数情况下,在进行写入操作之前必须先执行擦除。

Norflash存储单元编程写入原理如图1所示,在栅极和漏极加高压,通过热电子注入(hotelectroninjection)的方式,通过源极给浮栅充电。

擦写原理如图2所示,在栅极加负高压,阱中加正高压,利用F-N隧道效应(FowlerNordheimtunneling)将浮栅上的电荷释放。

早期的flash产品在布局时以一定数量的存储单元作为一个块(block),再以“块”为单位,布局整个产品的存储阵列。以4Mbit为例,存储单元阵列分布如图3。一个块的大小通常是64kbyte,也就是用户经常使用到的块擦除大小(blockerasesize),这个块中的存储单元由一定数量的字线(WL)和一定数量的位线(BL)组成,并且具有共同的阱。块与块之间的字线、位线和阱(well)都是相互独立的。这样,当对某一块进行擦写操作时,不会影响到其他的块。

随着存储单元工艺技术的进步,其工艺特征尺寸越来越小,为缩小整个芯片的面积,在布局存储单元阵列时,通常会把几个block放在一起,同时由于flash产品应用的多样化,块擦除的大小不再局限于64kbyte,目前主流的应用也会采用4kbyte擦除(sectorerasesize)或者是32kbyte擦除(halfblockerasesize)。由于是Nor型存储架构,这样在擦除某一区域(例如该区域可以是4kbyte(一个sector)或32kbyte(halfblock)或者是64kbyte(block))时,选中单元的漏极和未选中单元的漏极连接在一起,同时选中单元和未选中单元共用同一个阱,就不可避免的遇到干扰其它未选中区域的问题,其结果表现为存储单元原先存储的是'0'被干扰为'1',或者原先存储的是'1'被干扰为'0',从而造成位反转。

NorFlash的位反转现象,主要是由以下一些原因/效应所导致:1)漂移效应(DriftingEffects),漂移效应是指,NorFlash中cell的电压值慢慢地改变,并且与原始值不同。2)读操作干扰产生的错误(Read-DisturbErrors),此效应是指,对一个页进行数据读取操作,却使得对应的某个位的数据产生永久性的变化,即Flash上的该位的值发生改变。3)编程干扰所产生的错误(Program-DisturbErrors),此现象有时候也叫做漏极电压干扰(draindisturb),其原因是对于某个页面的编程操作,即写操作时漏极会施加一定的高压,由于采用Nor型存储架构,多个存储单元的漏极会连接在一起,这样当选中单元做编程操作时,高压会同时加载到选中单元和未选中单元的漏极,此高压会慢慢改变未选中存储单元内部电荷变化。当该变化积累到一定程度时,其存储状态就会从'0'变为'1'。4)擦除干扰(EraseDisturb),在擦除sector或者block时,由于邻近的sector或者block处在同一个阱当中,当阱电位升高至一定程度,并且干扰时间积累到一定程度时,也会改变存储单元内部电荷分布,从而改变存储状态。

在上述四种干扰类型中,一般情况下,前两种干扰所造成的影响需要长达几年甚至几十年的积累,后两种干扰也需要时间干扰,通常至少要经过几十次或几百次循环擦写,才会有存储单元发生位反转。由于前两种情况几乎可以忽略不计,因此,一般只需针对后两种情况进行排查。由于无法确定存储单元在何时何处会被干扰,于是在传统方法中的修复操作往往是对可能产生干扰的所有存储单元进行查找,对于将几个块合并为块组的设计来说,这是相当耗时且效率极低的。

发明内容

为了解决上述问题,本发明提供一种用于检验非易失存储单元受干扰的方法,其主要针对受到擦除干扰的存储单元而提供一种简单、快速且行之有效的检验方法,从而能够有效快速地确定被干扰的存储单元,并且及时修复。

依据本发明的一方面,提供一种用于检验非易失存储单元受干扰的方法,其适用于非易失存储单元,所述方法包括以下步骤:a)设置计数器的计数值为一预设值;b)接收擦除块指令,所述擦除块指令中包含相应擦除块的地址信息;c)根据所述相应擦除块的地址信息执行擦除操作;d)根据计数器的当前计数值以确定所述相应擦除块所在的同一个块组的相应干扰块;e)对所述相应干扰块进行修复操作;f)将计数器的计数值加1,并返回步骤b)。

在本发明的一实施例中,在步骤a)之前进一步包括:划分多个块组,每一所述块组包括多个块。

在本发明的一实施例中,在步骤e)中进一步包括步骤:e1)在所述相应干扰块中逐一查找存储单元,并且判断每一所述存储单元的干扰标记位;e2)当干扰标记位为有效时,则执行修复相应存储单元的操作,并且更新干扰标记位。

在本发明的一实施例中,所述计数器的位数是根据每一块组中的块的数目而确定的。

在本发明的一实施例中,在步骤d)和步骤e)之间进一步包括以下步骤:判断所述相应干扰块是否为所述相应擦除块;若是,则执行步骤f),否则执行步骤e)。

依据本发明的另一方面,本发明还提供一种用于检验非易失存储单元受干扰的装置,其包括以下模块:计数器初始模块,用于设置计数器的计数值为一预设值;擦除指令接收模块,与所述计数器初始模块相连,所述擦除指令接收模块用于接收擦除块指令,所述擦除块指令中包含相应擦除块的地址信息;擦除操作执行模块,与所述擦除指令接收模块相连,所述擦除操作执行模块用于根据所述相应擦除块的地址信息执行擦除操作;干扰块定位模块,与所述擦除操作执行模块相连,所述干扰块定位模块用于根据计数器的当前计数值以确定所述相应擦除块所在的同一个块组的相应干扰块;干扰块修复模块,与所述干扰块定位模块相连,所述干扰块修复模块用于对所述相应干扰块进行修复操作;计数器增值模块,分别与所述干扰块修复模块和所述擦除指令接收模块相连,所述计数器增值模块用于将计数器的计数值加1,并调用所述擦除指令接收模块。

在本发明的一实施例中,所述装置进一步包括:块组设置模块,所述块组设置模块与所述计数器初始模块相连,所述块组设置模块用于划分多个块组,每一所述块组包括多个块。

在本发明的一实施例中,所述干扰块修复模块包括:干扰标记位判断单元,用于在所述相应干扰块中逐一查找存储单元,并且判断每一所述存储单元的干扰标记位;干扰标记位更新单元,与所述干扰标记位判断单元相连,所述干扰标记位更新单元用于当干扰标记位为有效时,则执行修复相应存储单元的操作,并且更新干扰标记位。

在本发明的一实施例中,所述计数器的位数是根据每一块组中的块的数目而确定的。

在本发明的一实施例中,所述装置进一步包括:干扰块排除模块,分别与所述干扰块定位模块、所述干扰块修复模块和所述计数器增值模块相连,所述干扰块排除模块用于判断所述相应干扰块是否为所述相应擦除块,若是,则调用所述计数器增值模块,否则调用所述干扰块修复模块。

本发明所提供的一种用于检验非易失存储单元受干扰的方法,与传统方法相比,改进在于每一次执行擦除块操作之后,无需对整个块组进行操作,而是仅针对单个块(包括多个存储单元)进行操作,使得每次擦除操作的时间相对于不做修复的时间而言变化不明显。本发明不仅可以节省时间,而且能够及时有效地检验并且修复被干扰的存储单元。同时,芯片在流片后能够大大缩减烧录时间成本,以及时将产品推向给客户。

附图说明

图1是Norflash存储单元编程写入原理示意图;

图2是Norflash存储单元擦写原理示意图;

图3是4MNorflash存储单元阵列分布示意图;

图4是本发明一实施例中的用于检验非易失存储单元受干扰的方法的步骤流程示意图;

图5是本发明一实施例中所述块组阵列的示意图;

图6是本发明所述实施例中的相应干扰块的示意图;

图7是本发明一实施例中的用于检验非易失存储单元受干扰的装置的框架示意图。

具体实施方式

下面结合附图对本发明提供的用于检验非易失存储单元受干扰的方法及装置的具体实施方式做详细说明。

需注意的是,文中所述的块组即为bigblock,而块即为block。

参见图4至图6所示,本发明提供一种用于检验非易失存储单元受干扰的方法,其适用于非易失存储单元,所述方法包括:步骤S410、设置计数器的计数值为一预设值;步骤S420、接收擦除块指令,所述擦除块指令中包含相应擦除块的地址信息;步骤S430、根据所述相应擦除块的地址信息执行擦除操作;步骤S440、根据计数器的当前计数值以确定所述相应擦除块所在的同一个块组的相应干扰块;步骤S450、对所述相应干扰块进行修复操作;步骤S460、将计数器的计数值加1,并返回步骤S420。

以下将详细说明每一步骤。

在步骤S410中,将计数器的计数值设置为一预设值。在本实施例中,所述预设值设置为0,但所述预设值不限于此。所述计数器的位数是根据每一块组中的块的数目而确定的。例如,若每一块组包括4个块,则所述计数器的位数是2;若每一块组包括8个块,则所述计数器的位数是3,以此类推。下文将进一步说明术语“块组”和“块”。

可选的,在步骤S410之前,可以进一步包括:划分多个块组,每一所述块组包括多个块。其中,所述块组包括多个块,每一所述块包括多个存储单元,具体可参见图5所示。一个标准的块(block)的大小通常是0.5Mbit,一个bit为一个存储单元,这些存储单元以阵列形式排布,如图5所示,一个标准的块是由若干条字线(WL)和若干条位线(BL)组成的阵列组成。所述组包括n列的位线(BL)和m排的字线(WL),每一位线上的存储单元的源极相连,每一字线上的存储单元的栅极相连。每一所述存储单元包括一具有记忆功能的MOS管。根据图5所示,第零排包括0~n个MOS管,同样,第m排也包括0~n个MOS管。而第零列包括0~m个MOS管,同样,第m列也包括0~m个MOS管。另外,图5中的术语“选中的块”是指芯片在接受到擦除指令后,需要进行擦除的区域。“未选中的块”是指除需要做擦除的区域外的存储区域。由于在擦除某一区域时,选中的块(block)的漏极和未选中的块(block)的漏极连接在一起,同时选中的块(block)和未选中的块(block)共用同一个阱(亦即,在块组中,块与块的阱之间是相连在一起的,块组中所有存储单元的阱都是连在一起的),就不可避免的遇到干扰其它未选中的块的问题,其结果表现为存储单元原来存储的是'0'被干扰成'1',或者原来存储的是'1'被干扰成'0'而造成位反转。因此,本发明将通过以下步骤以解决现有技术中的问题。

另外,在划分块组的过程中,以四的倍数将多个块构成一块组。亦即,每一块组包括四个块。当然,在其他部分实施例中,每一块组也可以包括二块,或八块,或十六块。优选地,每一块组包括四个块。若每一块组包括更多个块(例如八块、十六块),则使得设计更复杂,而且也增加实施的难度。若每一块组仅包括二个块,则使得检验非易失存储单元是否受干扰的效率降低,并且与每一块组包括四个块的方式相比,采用该方式的芯片面积增加也可观。

在步骤S420中,所述擦除块指令中包含相应擦除块的地址信息。也就是说,所述地址信息用于表示第几个块组中的第几个块需要擦除。

在步骤S430中,在获取所述地址信息之后,找到相应擦除块,并且执行擦除操作。具体的擦除操作为本领域技术人员所公知的擦除方法,具体方法在此不再赘述。

在步骤S440中,根据计数器的当前计数值,以确定所述相应擦除块所在的同一个块组的相应干扰块。也就是说,所述相应干扰块和所述相应擦除块是在同一块组中。参见图6所示,在本实施例中,若接收到的擦除块指令中所包含相应擦除块的地址信息为第零个块组第一个块,那么首先对第零个块组第一个块(即图6所示的块组0中的块1)进行擦除操作。接着,在执行擦除操作之后,获取计数器的当前计数值。此时由于计数器的计数值被预设为0,因此,获取计数器的当前计数值为0。然后,在同一个块组中(即第零个块组)的第零个块被确定为相应干扰块(即图6所示的块组0中的块0)。在修复该相应干扰块之后,计数器的计数值加1。若接着又接收到的擦除块指令中所包含相应擦除块的地址信息为第三个块组第四个块。那么在对第三个块组第四个块(即图6所示的块组3中的块15)进行擦除操作之后,再次获取计数器的当前计数值。此时当前计数值为1,于是在同一个块组中(即第三个块组)的第一个块被确定为相应干扰块(即图6所示的块组3中的块13)。需注意的是,图中的块组及块的编号是用以说明及理解本发明,而非用以限制本发明。

在步骤S450中,对所述相应干扰块进行修复操作。在此步骤中,进一步包括以下步骤:在所述相应干扰块中逐一查找存储单元,并且判断每一所述存储单元的干扰标记位;当干扰标记位为有效时,则执行修复相应存储单元的操作,并且更新干扰标记位。

由于块包括多个存储单元,因此,在确定相应干扰块之后,在多个存储单元中逐一查找,并且判断每一所述存储单元的干扰标记位。当干扰标记位为有效时,此处有效是指存储状态从'0'欲变至'1'。当然也可以认为有效是指存储状态从'1'欲变至'0'。然而,在本发明仅针对存储状态从'0'欲变至'1'的情况。在判断干扰标记位为有效之后,将相应的存储单元进行修复,即使其存储状态恢复至'0',同时更新干扰标记位,以表明该存储单元已不是受干扰的存储单元。

在本实施例中,在步骤S440和步骤S450之间进一步包括以下步骤:判断所述相应干扰块是否为所述相应擦除块;若是,则执行步骤S460,否则执行步骤S450。也就是说,若发现将要修复的相应干扰块恰好是刚刚执行过擦除操作的所述相应擦除块,则执行步骤S460。

在步骤S460中,将计数器的计数值加1,并返回步骤S420,以等待下一条擦除块指令。若有多个不同块组中的块需要进行擦除操作,则可以循环执行步骤S420至步骤S460。在每次执行擦除操作之后便开始查找修复受干扰的存储单元。

需注意,非易失存储单元的特点在于,编程可以单独地对单个存储单元进行操作,而擦除是对单个块进行操作,因此,在做擦除时,容易使得某些存储单元还未擦除,而某些存储单元已经擦除,而且,整个擦除命令执行完成大约需300ms(单个编程命令执行完成大约需1-3μs)。由此可见,干扰操作主要是在擦除过程中发生的。所以,本发明主要针对在擦除操作之后进行查找修复受干扰的存储单元。

另外,若在每次执行擦除操作之后,将同一块组中的所有块进行查找修复的话,假设同一块组中有四个块,在对所述相应擦除块执行擦除操作之后,要对其余三个块进行查找修复,那么查找修复的时间可能达到150ms至200ms,而单个所述相应擦除块的擦除时间也仅为300ms,这样会延长擦除指令的实际执行时间。根据在实际应用中,通常存储单元需经过擦写循环才会产生干扰。有据于此,为了缩短整个擦除时间,又能最大化检验被干扰单元,故,本发明采用根据计数器的当前计数值以确定所述相应擦除块所在的同一个块组的相应干扰块的方式进行查找修复。这样,不仅使得每次擦除操作的时间相对于不做修复的时间而言变化不明显,从而可以节省时间,而且也能够及时有效地检验并修复被干扰的存储单元。同时,芯片在流片后能够大大缩减烧录时间成本,以便及时将产品推向给客户。

另外,本发明还提供一种用于检验非易失存储单元受干扰的装置。参见图7,所述装置包括以下模块:计数器初始模块72、擦除指令接收模块73、擦除操作执行模块74、干扰块定位模块75、干扰块修复模块77和计数器增值模块78。

所述计数器初始模块72用于设置计数器的计数值为一预设值。在本实施例中,所述预设值为0,但所述预设值不限于此。另外,所述计数器的位数是根据每一块组中的块的数目而确定的。

所述擦除指令接收模块73与所述计数器初始模块72相连。所述擦除指令接收模块73用于接收擦除块指令,所述擦除块指令中包含相应擦除块的地址信息。

所述擦除操作执行模块74与所述擦除指令接收模块73相连。所述擦除操作执行模块74用于根据所述相应擦除块的地址信息执行擦除操作。

所述干扰块定位模块75与所述擦除操作执行模块74相连。所述干扰块定位模块75用于根据计数器的当前计数值以确定所述相应擦除块所在的同一个块组的相应干扰块。也就是说,所述相应干扰块和所述相应擦除块是在同一块组中。

所述干扰块修复模块77与所述干扰块定位模块75相连,所述干扰块修复模块77用于对所述相应干扰块进行修复操作。所述干扰块修复模块77包括:干扰标记位判断单元771,用于在所述相应干扰块中逐一查找存储单元,并且判断每一所述存储单元的干扰标记位;干扰标记位更新单元772,与所述干扰标记位判断单元771相连,所述干扰标记位更新单元772用于当干扰标记位为有效时,则执行修复相应存储单元的操作,并且更新干扰标记位。在本发明仅针对存储状态从'0'欲变为'1'的情况。在判断干扰标记位为有效之后,将相应的存储单元进行修复,亦即,使其存储状态恢复至'0',同时更新干扰标记位,以表明该存储单元已不是受干扰的存储单元。

所述计数器增值模块78分别与所述干扰块修复模块77和所述擦除指令接收模块73相连。所述计数器增值模块78用于将计数器的计数值加1,并调用所述擦除指令接收模块73。若有多个不同块组中的块需要进行擦除操作,则可以依次调用所述擦除指令接收模块73、所述擦除操作执行模块74、所述干扰块定位模块75、所述干扰块修复模块77和所述计数器增值模块78之后再反复循环。

在本实施例中,所述装置进一步包括:块组设置模块71,所述块组设置模块71与所述计数器初始模块72相连。所述块组设置模块71用于划分多个块组,每一所述块组包括多个块。其中,所述块组包括多个块,每一所述块包括多个存储单元。

在本实施例中,所述装置进一步包括:干扰块排除模块76,分别与所述干扰块定位模块75、干扰块修复模块77和计数器增值模块78相连。所述干扰块排除模块76用于判断所述相应干扰块是否为所述相应擦除块,若是,则调用所述计数器增值模块78,否则调用所述干扰块修复模块77。也就是说,若发现将要修复的相应干扰块恰好是刚刚执行过擦除操作的所述相应擦除块,则调用所述计数器增值模块78。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号