Traitement en cours

Veuillez attendre...

Paramétrages

Paramétrages

Aller à Demande

1. WO2020107766 - PUCE DE MÉMOIRE FLASH ET PROCÉDÉ D'ÉTALONNAGE ET APPAREIL ASSOCIÉ

Document

说明书

发明名称 0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102   0103   0104   0105   0106   0107   0108   0109   0110   0111   0112   0113   0114   0115   0116   0117   0118   0119   0120   0121   0122   0123   0124   0125   0126   0127   0128   0129   0130   0131   0132   0133   0134   0135   0136   0137   0138   0139   0140   0141   0142   0143   0144   0145   0146   0147   0148   0149   0150   0151   0152   0153   0154   0155   0156   0157   0158   0159   0160   0161   0162   0163   0164   0165   0166   0167  

权利要求书

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16  

附图

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15  

说明书

发明名称 : 一种闪存芯片及其校准方法和装置

[0001]
本申请要求于2018年11月28日提交中国专利局、申请号为201811438979.5申请名称为“一种闪存芯片及其校准方法和装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。

技术领域

[0002]
本发明涉及半导体集成电路领域,尤其涉及一种闪存芯片及其校准方法和装置。

背景技术

[0003]
闪存芯片是一种长寿命的非易失性存储器芯片,由于其断电时仍能保存数据,所以闪存通常被用来保存设置信息,如在电脑的BIOS(基本程序)、PDA(个人数字助理)、数码相机中保存资料等,应用十分广泛。
[0004]
但是,随着闪存芯片使用时间的增加,其闪存单元(即闪存晶体管)存在漏电现象,由于闪存单元的权重(即闪存晶体管中存储的数据)与闪存单元中存储的电子数量相关,漏电会导致闪存单元中的电子数量减少,即闪存单元的权重(即闪存晶体管中存储的数据)发生偏移,降低了存储数据的精度。
[0005]
发明内容
[0006]
有鉴于此,本发明提供一种闪存芯片及其校准方法、装置、设备和介质,能够解决漏电导致存储数据的精度降低的问题。
[0007]
为了解决上述技术问题,本发明采用如下技术方案:、
[0008]
第一方面,提供一种闪存芯片,包括:工作阵列以及用于校准该 工作阵列的至少一个参考阵列;
[0009]
该工作阵列和该参考阵列均由多个可调权重等级为N的闪存单元组成,该闪存单元具有N级可调权重;
[0010]
该参考阵列中闪存单元数量大于或等于该可调权重等级N;
[0011]
该参考阵列的N个闪存单元的初始权重值与N级可调权重一一对应。
[0012]
进一步地,闪存芯片还包括:读取电路,
[0013]
该读取电路连接该工作阵列以及该参考阵列,用于读取该工作阵列以及该参考阵列中的闪存单元的权重值。
[0014]
进一步地,闪存芯片还包括:编程电路,
[0015]
该编程电路连接该工作阵列以及该参考阵列,用于控制该工作阵列以及该参考阵列中的闪存单元的权重值。
[0016]
进一步地,闪存芯片还包括:行列译码器,
[0017]
该行列译码器连接该工作阵列以及该参考阵列,用于选通该工作阵列以及该参考阵列中的闪存单元。
[0018]
进一步地,闪存芯片还包括:控制器,
[0019]
该控制器连接该读取电路、该编程电路以及该行列译码器,用于控制该读取电路、该编程电路以及该行列译码器工作。
[0020]
第二方面,提供一种闪存芯片校准方法,用于上述闪存芯片,该闪存芯片校准方法包括:
[0021]
根据闪存单元的可调权重设置参考阵列中闪存单元的初始权重值;
[0022]
根据参考阵列中闪存单元的实时权重值、初始权重值校准工作阵列中闪存单元的实时权重值。
[0023]
进一步地,该根据闪存单元的可调权重设置参考阵列中闪存单元的初始权重值,包括:
[0024]
将参考阵列的N个闪存单元中每个闪存单元的初始权重值设置为 与一级可调权重相等,使N个闪存单元的初始权重值与N级可调权重一一对应相等。
[0025]
进一步地,该根据参考阵列中闪存单元的实时权重值、初始权重值校准工作阵列中闪存单元的实时权重值,包括:
[0026]
根据该参考阵列中闪存单元的实时权重值获取其校准目标权重值;
[0027]
依次读取工作阵列中闪存单元的实时权重值;
[0028]
根据该参考阵列中N个闪存单元的初始权重值以及校准目标权重值依次校准该工作阵列中的闪存单元的实时权重值。
[0029]
进一步地,该根据该参考阵列中N个闪存单元的初始权重值以及校准目标权重值依次校准该工作阵列中的闪存单元的实时权重值,包括:
[0030]
在该参考阵列中查找校准目标权重值与该工作阵列中一闪存单元的实时权重值相等或相近的闪存单元;
[0031]
将该工作阵列中的该闪存单元的实时权重值设置为查找到的参考阵列中的该闪存单元的初始权重值。
[0032]
进一步地,该根据该参考阵列中闪存单元的实时权重值获取其校准目标权重值,包括:
[0033]
读取该参考阵列中闪存单元的实时权重值;
[0034]
当该参考阵列的数量为1时,将读取的闪存单元的实时权重值作为该闪存单元的校准目标权重值;
[0035]
当该参考阵列的数量大于1时,计算所有参考阵列中初始权重值相同的闪存单元的实时权重值平均值,作为该闪存单元的校准目标权重值。
[0036]
第三方面,提供一种闪存芯片校准装置,用于上述闪存芯片,该闪存芯片校准装置包括:
[0037]
初始化模块,根据闪存单元的可调权重设置参考阵列中闪存单元 的初始权重值;
[0038]
第一校准模块,根据参考阵列中闪存单元的实时权重值、初始权重值校准工作阵列中闪存单元的实时权重值。
[0039]
进一步地,该初始化模块包括:
[0040]
初始权重设置单元,将参考阵列的N个闪存单元中每个闪存单元的初始权重值设置为与一级可调权重相等,使N个闪存单元的初始权重值与N级可调权重一一对应相等。
[0041]
进一步地,该第一校准模块包括:
[0042]
获取单元,根据该参考阵列中闪存单元的实时权重值获取其校准目标权重值;
[0043]
读取单元,依次读取工作阵列中闪存单元的实时权重值;
[0044]
校准单元,根据该参考阵列中N个闪存单元的初始权重值以及校准目标权重值依次校准该工作阵列中的闪存单元的实时权重值。
[0045]
第四方面,提供一种闪存芯片校准方法,包括:
[0046]
读取工作阵列中闪存单元的实时权重值;
[0047]
根据可调权重等级表校准该工作阵列中闪存单元的实时权重值。
[0048]
进一步地,该根据可调权重等级表校准该工作阵列中闪存单元的实时权重值,包括:
[0049]
在可调权重等级表中查找与该闪存单元的实时权重值相等或相近的可调权重值;
[0050]
将该闪存单元的实时权重值设置为该可调权重值。
[0051]
第五方面,提供一种闪存芯片校准装置,包括:
[0052]
读取模块,读取工作阵列中闪存单元的实时权重值;
[0053]
第二校准模块,根据可调权重等级表校准该工作阵列中闪存单元的实时权重值。
[0054]
第六方面,提供一种计算机设备,包括存储器、处理器及存储在 存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述的闪存芯片校准方法的步骤。
[0055]
第七方面,提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现上述的闪存芯片校准方法的步骤。
[0056]
本发明提供的闪存芯片及其校准方法、装置、设备和介质,可利用闪存单元的可调权重等级对该闪存芯片中的工作阵列进行校准,具体可通过设置用于校准工作阵列的至少一个参考阵列,并且参考阵列中的闪存单元的数量大于或等于该闪存单元的可调权重等级N;参考阵列的N个闪存单元的初始权重值与闪存单元的N级可调权重一一对应,多余的闪存单元作为冗余单元备用;校准时,根据参考阵列中闪存单元的实时权重值、初始权重值校准工作阵列中闪存单元的实时权重值,以此实现工作阵列中闪存单元权重的离线更新校准,补偿了漏电现象对闪存单元权重的影响,能够提高存储数据的精度。
[0057]
为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。

附图说明

[0058]
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
[0059]
图1是本发明实施例闪存芯片的结构框图一;
[0060]
图2是本发明实施例闪存芯片的电路示意图一;
[0061]
图3是本发明实施例闪存芯片的电路示意图二;
[0062]
图4是本发明实施例闪存芯片的电路示意图三;
[0063]
图5是本发明实施例闪存芯片的电路示意图四;
[0064]
图6是本发明实施例闪存芯片的电路示意图五;
[0065]
图7是本发明实施例闪存芯片的电路示意图六;
[0066]
图8是本发明实施例闪存芯片的电路示意图七;
[0067]
图9是本发明实施例闪存芯片的结构框图二;
[0068]
图10是本发明实施例闪存芯片校准方法的流程图;
[0069]
图11示出了图10中步骤S200的具体步骤;
[0070]
图12示出了本发明实施例闪存芯片校准装置的结构图;
[0071]
图13示出了本发明另一闪存芯片校准方法的流程图;
[0072]
图14示出了本发明另一实施例闪存芯片校准装置的结构图;
[0073]
图15示出适于用来实现本申请实施例的计算机设备的结构示意图。

具体实施方式

[0074]
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
[0075]
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
[0076]
随着闪存芯片使用时间的增加,其闪存单元(即闪存晶体管)存在漏电现象,降低了存储数据的精度。为解决该问题,申请人进行了大量的研究试验后发现,对于同一个闪存芯片,所有闪存单元都具有 同样的漏电趋势,利用该发现,本发明实施例提供一种闪存芯片及其校准方法、装置、设备和介质,能够实现工作阵列中闪存单元权重的离线更新校准,补偿了漏电现象对闪存单元权重的影响,进而提高存储数据的精度。
[0077]
图1是本发明实施例闪存芯片的结构框图一。如图1所示,该闪存芯片1包括:工作阵列100以及用于校准工作阵列100的至少一个参考阵列200,工作阵列100连接参考阵列200。
[0078]
具体地,工作阵列100和参考阵列200均由多个闪存单元组成。其中,闪存单元为组成该闪存芯片的最小单位,该闪存单元的可调权重等级为N,即:该闪存单元具有N级可调权重。
[0079]
在一个可选的实施例中,该闪存单元可以为闪存晶体管,如SONOS型浮栅晶体管(floating-gate transistor)、分裂式浮栅晶体管(Split-gate floating-gate transistor)或电荷式浮栅晶体管(Charge-trapping floating-gate transistor),本发明实施例包括但不限于此。
[0080]
该参考阵列中的闪存单元的数量大于或等于该闪存单元的可调权重等级N,并且,该参考阵列中的N个闪存单元的初始权重值与N级可调权重一一对应,其余闪存单元作为冗余单元备用。
[0081]
值得说明的是,闪存芯片中所有闪存单元的型号都相同,在存储数据时,通过调整闪存单元的权重实现不同数据的存储。但是,闪存单元的权重并非可以随意调整至任何数值,而是闪存单元具有多级可调权重,通过将闪存单元的权重调整至对应的可调权重,实现数据存储。
[0082]
比如,某一闪存芯片中,闪存单元的可调权重可以有N个数值,记为A 1~A N,其中,N为可调权重等级,A 1为第1级可调权重,A N为第N级可调权重。
[0083]
因为对于同一个闪存芯片,所有闪存单元都具有同样的漏电趋势,所以经过一定的时间周期后,工作阵列和参考阵列都具有相同的漏电趋势,即权重偏移相同,此时利用参考阵列去校准工作阵列的权重。
[0084]
具体为:当参考阵列的数量为1时,将读取的闪存单元的实时权重值作为该闪存单元的校准目标权重值;当所述参考阵列的数量大于1时,计算所有参考阵列中初始权重值相同的闪存单元的实时权重值平均值,作为该闪存单元的校准目标权重值;然后,依次读取工作阵列中闪存单元的实时权重值;之后,在参考阵列中查找校准目标权重值与工作阵列中一闪存单元的实时权重值相等或相近的闪存单元;最后,将工作阵列中的该闪存单元的实时权重值设置为查找到的参考阵列中的该闪存单元的初始权重值。
[0085]
举例来说:参考阵列中第K个闪存单元的初始权重值设置为A K,经过一定的时间周期后,其权重值还应该为A K,但是由于存在漏电,则其权重值变为了A V,那么此时该第K个闪存单元的漏电为(A K-A V),此时,工作阵列中权重值为A V的闪存单元,也存在(A K-A V)的漏电,则将工作阵列中权重值为A V的闪存单元的权重值设为A K,以此对漏电进行补偿。
[0086]
值得说明的是,若工作阵列中某一闪存单元的实时权重值为A i,且在参考阵列中没有校准目标权重值等于A i的闪存单元,此时,在参考阵列中搜索校准目标权重值与A i相近的闪存单元,比如A V-1<A i<A v,此时,利用参考阵列中校准目标权重值为A V-1与校准目标权重值为A v的闪存单元校准工作阵列中实时权重值为A i的闪存单元,具体为:若A i更靠近A v,则将工作阵列中实时权重值为A i的闪存单元的实时权重值调整为参考阵列中校准目标权重值为A v的闪存单元的初始权重值,若A i更靠近A V-1,则将工作阵列中实时权重值为A i的闪存单元的实时权重值调整为参考阵列中校准目标权重值为A v-1的闪存单元的初始权 重值,若A i正好处于A V-1与A v中间,则采用参考阵列中校准目标权重值为A V-1或校准目标权重值为A v的闪存单元之一校准工作阵列中实时权重值为A i的闪存单元。
[0087]
当然,在同一闪存芯片中,当工作阵列的闪存单元的实时权重值A i位于参考阵列中两闪存单元的校准目标权重值中间时,若采用校准目标权重值较大的一个校准工作阵列中的该闪存单元,则该闪存芯片中所有闪存单元都采用该规则,反之亦然。
[0088]
综上所述,本发明实施例通过设置用于校准工作阵列的至少一个参考阵列,利用参考阵列去校准工作阵列的权重,实现工作阵列中闪存单元权重的离线更新校准,补偿了漏电现象对闪存单元权重的影响,能够提高存储数据的精度。
[0089]
在一个可选的实施例中,可以将闪存芯片1的工作阵列划分出来的一部分作为参考阵列使用,形成工作阵列100和参考阵列200。
[0090]
比如,图2示出了在一个闪存芯片的工作阵列的右侧划分出一个参考阵列200,形成一个M×N的工作阵列100以及参考阵列200,其中,受限于参考阵列200中的闪存单元的个数,该参考阵列200中的闪存单元可能排布成完整的阵列,也可能排布成部分位置没有设置闪存单元的阵列形式,没有设置闪存单元的位置可以任意选择。当然,也可以在该闪存芯片的工作阵列的左侧划分出一个参考阵列200,形成一个M×L的工作阵列100以及参考阵列200,其原理与在闪存芯片的工作阵列的右侧划分参考阵列相同,相互参见即可,在此不再赘述。
[0091]
比如,图3示出了在一个闪存芯片的工作阵列的上方划分出一个参考阵列200,形成一个M×L的工作阵列100以及参考阵列200,其中,受限于参考阵列200中的闪存单元的个数,该参考阵列200中的闪存单元可能排布成完整的阵列,也可能排布成部分位置没有设置闪存单元的阵列形式,没有设置闪存单元的位置可以任意选择。当然, 也可以在该闪存芯片的工作阵列的下方划分出一个参考阵列200,形成一个M×L的工作阵列100以及参考阵列200,其原理与在闪存芯片的工作阵列的上方划分参考阵列相同,相互参见即可,在此不再赘述。
[0092]
比如,图4示出了在一个闪存芯片的工作阵列的右侧和下方划分出一个参考阵列200,形成一个M×L的工作阵列100以及参考阵列200,其中,受限于参考阵列200中的闪存单元的个数,该参考阵列200中的闪存单元可能排布成完整的阵列,也可能排布成部分位置没有设置闪存单元的阵列形式,没有设置闪存单元的位置可以任意选择。当然,也可以在该闪存芯片的工作阵列的右侧和上方或左侧和上方或左侧和下方划分出一个参考阵列200,形成一个M×L的工作阵列100以及参考阵列200,其原理与在闪存芯片的工作阵列的右侧和下方划分参考阵列相同,相互参见即可,在此不再赘述。
[0093]
比如,图5示出了在一个闪存芯片的工作阵列的四周划分出一个参考阵列200,形成一个M×L的工作阵列100以及参考阵列200,其中,受限于参考阵列200中的闪存单元的个数,该参考阵列200中的闪存单元可能完整的排布在该工作阵列的周围一圈或多圈,也可能仅排布该工作阵列的周围一圈或多圈的部分位置,没有设置闪存单元的位置可以任意选择。
[0094]
通过上述举例可以得知,可以将闪存芯片的工作阵列划分出来的一部分作为参考阵列使用,对于具体划分的方式,可以根据实际需要进行选择,在工作阵列的上下左右选择数量大于或等于该闪存单元的权重等级的闪存单元作为参考阵列即可,本发明实施例对划分方式不作限制。
[0095]
本领域技术人员可以理解的是,也可以在一个闪存芯片中独立设置参考阵列,与该闪存芯片中的工作阵列相互独立,因该闪存芯片工 作时,该参考阵列以及工作阵列均存在激励,所以也能够利用独立的参考阵列的权重去校准工作阵列的权重。
[0096]
当然,本领域技术人员还可以理解的是,同一闪存芯片上的参考阵列与工作阵列可以经历相同的激励,也可以经历不同的激励。
[0097]
在一个优选的实施例中,该闪存芯片中设置多个如上所述的参考阵列,每个参考阵列中的闪存单元的数量均大于或等于该闪存单元的可调权重等级,每个参考阵列的N个闪存单元的初始权重值与该闪存单元的N级可调权重一一对应。在利用该参考阵列校准工作阵列之前,计算多个参考阵列中对应于同一级可调权重的闪存单元的实时权重值的均值,作为该闪存单元的校准目标权重值,进而利用该闪存单元的校准目标权重值对工作阵列进行校准。
[0098]
考虑到不同闪存单元由于工艺偏差或者空间分布以及外部环境的不同,同一闪存芯片上的闪存单元的漏电趋势虽然相同,但是漏电量可能不完全相同,即权重偏移相近但不完全相同,利用参考阵列的权重去校准工作阵列的权重时,仅能补偿部分漏电影响,不能完全消除漏电影响,此时,利用多个参考阵列中对应同一级权重的闪存单元的权重均值去校准工作阵列,能够有效考虑到不同闪存单元的权重偏移,进而能够最大限度消除漏电影响。
[0099]
具体地,该多个参考阵列可以包括:设置工作阵列上下左右的参考阵列(图6示出了在工作阵列100的左右两侧分别设置参考阵列200a和参考阵列200b)、设置在工作阵列的右侧和下方的参考阵列、设置在工作阵列的右侧和上方的参考阵列、设置在工作阵列左侧和上方的参考阵列、设置在工作阵列的左侧和下方的参考阵列、设置在工作阵列的四周的参考阵列或者前者的结合(图7的示出了在工作阵列100的上方以及右侧和下方设置参考阵列200a和200b,图8在图7的基础上,又在工作阵列100的左侧增加了参考阵列200c),本发明实施例对多 个参考阵列的设置位置不作限制,仅需每个参考阵列中的闪存单元的数量均大于或等于该闪存单元的权重等级,部分闪存单元的权重值与多级权重对应的权重值一一对应,多余的闪存单元作为冗余单元备用即可,具体每个参考阵列的设置方式参考上文描述,在此不再赘述。
[0100]
图9是本发明实施例闪存芯片的结构框图二。如图9所示,该闪存芯片在包含图1至图8任一项所述闪存芯片的基础上,还包括:读取电路300、编程电路400、行列译码器500以及控制器600。
[0101]
其中,该读取电路300连接该工作阵列100以及该参考阵列200,用于读取该工作阵列100以及该参考阵列200中的闪存单元的权重值。
[0102]
具体地,该读取电路300连接该工作阵列100以及该参考阵列200中的每一个闪存单元,在控制器600的控制下,读取闪存单元的权重值。
[0103]
该编程电路400连接该工作阵列100以及该参考阵列200,用于控制该工作阵列100以及该参考阵列200中的闪存单元的权重值。
[0104]
具体地,该编程电路400连接该工作阵列100以及该参考阵列200中的每一个闪存单元,用于产生编程电压或者擦除电压,施加至闪存单元,以调控该闪存单元的权重值。
[0105]
该行列译码器500连接该工作阵列100以及该参考阵列200,用于选通该工作阵列100以及该参考阵列200中的闪存单元。
[0106]
具体地,该行列译码器500连接该工作阵列100以及该参考阵列200中每一个闪存单元,在控制器600的控制下,选通需要的闪存单元。
[0107]
该控制器600连接该读取电路300、该编程电路400以及该行列译码器500,用于控制该读取电路300、该编程电路400以及该行列译码器500工作。
[0108]
本发明实施例还提供一种闪存芯片校准方法,如图10所示,用于上述闪存芯片,包括:
[0109]
步骤S100:根据闪存单元的可调权重设置参考阵列中闪存单元的初始权重值。
[0110]
其中,该闪存芯片的参考阵列用于校准闪存芯片中的工作阵列,参考阵列至少为一个,并且工作阵列和参考阵列均由多个可调权重等级为N的闪存单元组成,即闪存单元具有N级可调权重;参考阵列中闪存单元数量大于或等于所述可调权重等级N。并且,该闪存芯片还包括:用于读取工作阵列以及参考阵列中的闪存单元的权重值的读取电路、用于控制工作阵列以及参考阵列中的闪存单元的权重值的编程电路、用于选通工作阵列以及参考阵列中的闪存单元的行列译码器以及用于读取电路、编程电路以及行列译码器工作的控制器。
[0111]
具体地,通过行列译码器以及编程电路配合进行初始权重值设置,由行列译码器选通待编程的闪存单元,编程电路对行列译码器选通的闪存单元进行编程,将参考阵列的N个闪存单元中每个闪存单元的初始权重值设置为与一级可调权重相等,使N个闪存单元的初始权重值与N级可调权重一一对应相等,其余闪存单元作为冗余单元备用。
[0112]
具体地,对于一个M×L的工作阵列,每个闪存单元的可调权重值可以有N个数值,记为A 1-A N,其中,N为权重等级,A 1为第1级权重对应的可调权重值,A N为第N级权重对应的可调权重值。
[0113]
在闪存芯片的参考阵列中选择N个闪存单元用于校准工作阵列,其余闪存单元作为冗余单元备用,控制器控制行列译码器以及编程电路配合,将该N个闪存单元的权重值分别设置为A 1-A N
[0114]
步骤S200:根据参考阵列中闪存单元的实时权重值、初始权重值校准工作阵列中闪存单元的实时权重值。
[0115]
其中,经过一定的时间周期后,闪存单元存在漏电,工作阵列和参考阵列都具有相同的漏电趋势,即权重偏移相同,此时利用参考阵列去校准工作阵列的权重,对漏电进行补偿。由控制器控制读取电路、 行列译码器、编程电路配合,根据参考阵列中闪存单元的实时权重值、初始权重值校准工作阵列中闪存单元的实时权重值。
[0116]
具体地,该步骤S200包括如下步骤(如图11所示):
[0117]
步骤S201:根据参考阵列中闪存单元的实时权重值获取其校准目标权重值。
[0118]
具体地:利用读取电路读取参考阵列中闪存单元的实时权重值;当参考阵列的数量为1时,将读取的闪存单元的实时权重值作为该闪存单元的校准目标权重值;当所述参考阵列的数量大于1时,计算所有参考阵列中初始权重值相同的闪存单元的实时权重值平均值,作为该闪存单元的校准目标权重值。
[0119]
步骤S202:依次读取工作阵列中闪存单元的实时权重值。
[0120]
步骤S203:根据参考阵列中N个闪存单元的初始权重值以及校准目标权重值依次校准工作阵列中的闪存单元的实时权重值。
[0121]
具体地,在参考阵列中查找校准目标权重值与工作阵列中某一闪存单元的实时权重值相等或相近的闪存单元;然后,将工作阵列中的该闪存单元的实时权重值设置为查找到的参考阵列中的闪存单元的初始权重值。
[0122]
举例来说:参考阵列中第K个闪存单元的初始权重值设置为A K,经过一定的时间周期后,其权重值还应该为A K,但是由于存在漏电,则其权重值变为了A V,那么此时该第K个闪存单元的漏电为(A K-A V),此时,工作阵列中权重值为A V的闪存单元,也存在(A K-A V)的漏电,则将工作阵列中权重值为A V的闪存单元的权重值设为A K,以此对漏电进行补偿。
[0123]
值得说明的是,若工作阵列中某一闪存单元的实时权重值为A i,且在参考阵列中没有校准目标权重值等于A i的闪存单元,此时,在参考阵列中搜索校准目标权重值与A i相近的闪存单元,比如A V-1<A i<A v, 此时,利用参考阵列中校准目标权重值为A V-1与校准目标权重值为A v的闪存单元校准工作阵列中实时权重值为A i的闪存单元,具体为:若A i更靠近A v,则将工作阵列中实时权重值为A i的闪存单元的实时权重值调整为参考阵列中校准目标权重值为A v的闪存单元的初始权重值,若A i更靠近A V-1,则将工作阵列中实时权重值为A i的闪存单元的实时权重值调整为参考阵列中校准目标权重值为A v-1的闪存单元的初始权重值,若A i正好处于A V-1与A v中间,则采用参考阵列中校准目标权重值为A V-1或校准目标权重值为A v的闪存单元之一校准工作阵列中实时权重值为A i的闪存单元。
[0124]
当然,在同一闪存芯片中,当工作阵列的闪存单元的实时权重值A i位于参考阵列中两闪存单元的校准目标权重值中间时,若采用校准目标权重值较大的一个校准工作阵列中的该闪存单元,则该闪存芯片中所有闪存单元都采用该规则,反之亦然。
[0125]
综上所述,本发明实施例提供的闪存芯片校准方法通过设置用于校准工作阵列的至少一个参考阵列,并且参考阵列中的闪存单元的数量大于或等于该闪存单元的可调权重等级N;参考阵列的N个闪存单元的初始权重值与闪存单元的N级可调权重一一对应,多余的闪存单元作为冗余单元备用;校准时,根据参考阵列中闪存单元的实时权重值、初始权重值校准工作阵列中闪存单元的实时权重值,以此实现工作阵列中闪存单元权重的离线更新校准,补偿了漏电现象对闪存单元权重的影响,能够提高存储数据的精度。
[0126]
基于同一发明构思,本申请实施例还提供了一种闪存芯片校准装置,可以用于实现上述实施例所描述的方法,如下面的实施例该。由于闪存芯片校准装置解决问题的原理与上述方法相似,因此闪存芯片校准装置的实施可以参见上述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或 硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
[0127]
图12示出了本发明实施例闪存芯片校准装置的结构图。如图12所示,闪存芯片校准装置1000用于上述闪存芯片,包括:初始化模块1100以及第一校准模块1200。
[0128]
初始化模块1100根据闪存单元的可调权重设置参考阵列中闪存单元的初始权重值。
[0129]
在一个可选的实施例中,该初始化模块1100可以包括:初始权重设置单元,该初始权重设置单元将参考阵列的N个闪存单元中每个闪存单元的初始权重值设置为与一级可调权重相等,使N个闪存单元的初始权重值与N级可调权重一一对应相等。
[0130]
第一校准模块1200根据参考阵列中闪存单元的实时权重值、初始权重值校准工作阵列中闪存单元的实时权重值。
[0131]
在一个可选的实施例中,该第一校准模块可以包括:获取单元、读取单元以及校准单元。其中,获取单元用于根据该参考阵列中闪存单元的实时权重值获取其校准目标权重值,具体为:首先,读取该参考阵列中闪存单元的实时权重值;当该参考阵列的数量为1时,将读取的闪存单元的实时权重值作为该闪存单元的校准目标权重值;当该参考阵列的数量大于1时,计算所有参考阵列中初始权重值相同的闪存单元的实时权重值平均值,作为该闪存单元的校准目标权重值。
[0132]
读取单元用于依次读取工作阵列中闪存单元的实时权重值。
[0133]
校准单元用于根据该参考阵列中N个闪存单元的初始权重值以及校准目标权重值依次校准该工作阵列中的闪存单元的实时权重值,具体地:首先,在该参考阵列中查找校准目标权重值与该工作阵列中一闪存单元的实时权重值相等或相近的闪存单元;然后,将该工作阵列中的该闪存单元的实时权重值设置为查找到的参考阵列中的该闪存单 元的初始权重值。
[0134]
本发明实施例还提供一种闪存芯片校准方法,如图13所示,用于上述闪存芯片,该闪存芯片校准方法包括:
[0135]
步骤S1000:读取工作阵列中闪存单元的实时权重值。
[0136]
其中,该闪存芯片的工作阵列由多个可调权重等级为N的闪存单元组成,即闪存单元具有N级可调权重。并且,该闪存芯片还包括:用于读取工作阵列中的闪存单元的权重值的读取电路、用于控制工作阵列中的闪存单元的权重值的编程电路、用于选通工作阵列中的闪存单元的行列译码器以及用于控制读取电路、编程电路以及行列译码器工作的控制器。
[0137]
具体地,通过控制器控制读取电路和行列译码器配合,读取工作阵列中各闪存单元的实时权重值。
[0138]
步骤S2000:根据可调权重等级表校准该工作阵列中闪存单元的实时权重值。
[0139]
具体地,对于某一闪存单元来说,在可调权重等级表中查找与该闪存单元的实时权重值相等或相近的可调权重值。然后,控制器控制编程电路与行列译码器配合,将该闪存单元的实时权重值设置为查找到的该可调权重值。
[0140]
值得说明的是,当该闪存单元的实时权重值位于相邻的两个可调权重值之间时,利用距该闪存单元的实时权重值较近的可调权重值校准该闪存单元,当该闪存单元的实时权重值正好位于相邻的两个可调权重值中间时,则可以采用两个可调权重值中大于该实时权重值的可调权重值校准该闪存单元,或者,采用两个可调权重值中小于该实时权重值的可调权重值校准该闪存单元。
[0141]
当然,在同一闪存芯片中,当该闪存单元的实时权重值正好位于相邻的两个可调权重值中间时,若采用两个可调权重值中大于该实时 权重值的可调权重值校准该闪存单元,则对于该闪存芯片的所有闪存单元都采用该种方式,反之亦然。
[0142]
综上所述,本发明实施例提供的闪存芯片校准方法,直接利用闪存单元的可调权重等级对该闪存芯片中的工作阵列进行校准,实现工作阵列中闪存单元权重的离线更新校准,补偿了漏电现象对闪存单元权重的影响,能够提高存储数据的精度。
[0143]
基于同一发明构思,本申请实施例还提供了一种闪存芯片校准装置,可以用于实现上述实施例所描述的方法,如下面的实施例该。由于闪存芯片校准装置解决问题的原理与上述方法相似,因此闪存芯片校准装置的实施可以参见上述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
[0144]
图14示出了本发明另一实施例闪存芯片校准装置的结构图,如图14所示,该闪存芯片校准装置2000包括:读取模块2100以及第二校准模块2200。
[0145]
读取模块2100读取工作阵列中闪存单元的实时权重值。
[0146]
第二校准模块2200根据可调权重等级表校准该工作阵列中闪存单元的实时权重值。
[0147]
具体地,该第二校准模块2200包括:查找单元以及调整单元。其中,该查找单元用于在可调权重等级表中查找与该闪存单元的实时权重值相等或相近的可调权重值;该调整单元用于将该闪存单元的实时权重值设置为该可调权重值。
[0148]
上述实施例阐明的装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机设备,具体的,计算机设备例如可以为个人计算机、膝上型 计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
[0149]
在一个典型的实例中计算机设备具体包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的闪存芯片校准的方法。
[0150]
下面参考图15,其示出了适于用来实现本申请实施例的计算机设备的结构示意图。
[0151]
如图15所示,计算机设备包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM))603中的程序而执行各种适当的工作和处理。在RAM603中,还存储有系统600操作所需的各种程序和数据。
[0152]
CPU601、ROM602、以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
[0153]
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡,调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口606。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装如存储部分608。
[0154]
特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例还提供一种计算机可读介质,计算机程序有形地包含在计算机可读介质上,所述计算机程序包括用于执行流程图所示的方法的程序代码,该计算机程序被处 理器执行时实现上述的闪存芯片校准方法的步骤。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。
[0155]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0156]
本申请中的控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以将控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内部包括的用于实现各种功能的装置也可以视为硬件部件内的结构。
[0157]
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0158]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0159]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0160]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0161]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并 不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0162]
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质
[0163]
(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0164]
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0165]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0166]
虽然本申请提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
[0167]
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

权利要求书

[权利要求 1]
一种闪存芯片,其特征在于,包括:工作阵列以及用于校准所述工作阵列的至少一个参考阵列; 所述工作阵列和所述参考阵列均由多个可调权重等级为N的闪存单元组成,所述闪存单元具有N级可调权重; 所述参考阵列中闪存单元数量大于或等于所述可调权重等级N; 所述参考阵列的N个闪存单元的初始权重值与N级可调权重一一对应。
[权利要求 2]
根据权利要求1所述闪存芯片,其特征在于,还包括:读取电路, 所述读取电路连接所述工作阵列以及所述参考阵列,用于读取所述工作阵列以及所述参考阵列中的闪存单元的权重值。
[权利要求 3]
根据权利要求2所述闪存芯片,其特征在于,还包括:编程电路, 所述编程电路连接所述工作阵列以及所述参考阵列,用于控制所述工作阵列以及所述参考阵列中的闪存单元的权重值。
[权利要求 4]
根据权利要求3所述闪存芯片,其特征在于,还包括:行列译码器, 所述行列译码器连接所述工作阵列以及所述参考阵列,用于选通所述工作阵列以及所述参考阵列中的闪存单元。
[权利要求 5]
根据权利要求4所述闪存芯片,其特征在于,还包括:控制器, 所述控制器连接所述读取电路、所述编程电路以及所述行列译码器,用于控制所述读取电路、所述编程电路以及所述行列译码器工作。
[权利要求 6]
一种闪存芯片校准方法,其特征在于,用于如权利要求1至5中任一项所述闪存芯片,所述闪存芯片校准方法包括: 根据闪存单元的可调权重设置参考阵列中闪存单元的初始权重值; 根据参考阵列中闪存单元的实时权重值、初始权重值校准工作阵列中闪存单元的实时权重值。
[权利要求 7]
根据权利要求6所述闪存芯片校准方法,其特征在于,所述根据闪存单元的可调权重设置参考阵列中闪存单元的初始权重值,包括: 将参考阵列的N个闪存单元中每个闪存单元的初始权重值设置为与一级可调权重相等,使N个闪存单元的初始权重值与N级可调权重一一对应相等。
[权利要求 8]
根据权利要求7所述闪存芯片校准方法,其特征在于,所述根据参考阵列中闪存单元的实时权重值、初始权重值校准工作阵列中闪存单元的实时权重值,包括: 根据所述参考阵列中闪存单元的实时权重值获取其校准目标权重值; 依次读取工作阵列中闪存单元的实时权重值; 根据所述参考阵列中N个闪存单元的初始权重值以及校准目标权重值依次校准所述工作阵列中的闪存单元的实时权重值。
[权利要求 9]
根据权利要求8所述闪存芯片校准方法,其特征在于,所述根据所述参考阵列中N个闪存单元的初始权重值以及校准目标权重值依次校准所述工作阵列中的闪存单元的实时权重值,包括: 在所述参考阵列中查找校准目标权重值与所述工作阵列中一闪存单元的实时权重值相等或相近的闪存单元; 将所述工作阵列中的该闪存单元的实时权重值设置为查找到的参考阵列中的该闪存单元的初始权重值。
[权利要求 10]
根据权利要求8所述闪存芯片校准方法,其特征在于,所述根据所述参考阵列中闪存单元的实时权重值获取其校准目标权重值,包括: 读取所述参考阵列中闪存单元的实时权重值; 当所述参考阵列的数量为1时,将读取的闪存单元的实时权重值作为该闪存单元的校准目标权重值; 当所述参考阵列的数量大于1时,计算所有参考阵列中初始权重值相同的闪存单元的实时权重值平均值,作为该闪存单元的校准目标权重值。
[权利要求 11]
一种闪存芯片校准装置,其特征在于,用于如权利要求1至5中任一项所述闪存芯片,所述闪存芯片校准装置包括: 初始化模块,根据闪存单元的可调权重设置参考阵列中闪存单元的初始权重值; 第一校准模块,根据参考阵列中闪存单元的实时权重值、初始权重值校准工作阵列中闪存单元的实时权重值。
[权利要求 12]
根据权利要求11所述闪存芯片校准装置,其特征在于,所述初始化模块包括: 初始权重设置单元,将参考阵列的N个闪存单元中每个闪存单元的初始权重值设置为与一级可调权重相等,使N个闪存单元的初始权重值与N级可调权重一一对应相等。
[权利要求 13]
根据权利要求11所述闪存芯片校准装置,其特征在于,所述第一校准模块包括: 获取单元,根据所述参考阵列中闪存单元的实时权重值获取其校准目标权重值; 读取单元,依次读取工作阵列中闪存单元的实时权重值; 校准单元,根据所述参考阵列中N个闪存单元的初始权重值以及校准目标权重值依次校准所述工作阵列中的闪存单元的实时权重值。
[权利要求 14]
一种闪存芯片校准方法,其特征在于,包括: 读取工作阵列中闪存单元的实时权重值; 根据可调权重等级表校准所述工作阵列中闪存单元的实时权重值。
[权利要求 15]
根据权利要求14所述闪存芯片校准方法,其特征在于,所述根据可调权重等级表校准所述工作阵列中闪存单元的实时权重值,包括: 在可调权重等级表中查找与所述闪存单元的实时权重值相等或相近的可调权重值; 将所述闪存单元的实时权重值设置为所述可调权重值。
[权利要求 16]
一种闪存芯片校准装置,其特征在于,包括: 读取模块,读取工作阵列中闪存单元的实时权重值; 第二校准模块,根据可调权重等级表校准所述工作阵列中闪存单元的实时权重值。

附图

[ 图 1]  
[ 图 2]  
[ 图 3]  
[ 图 4]  
[ 图 5]  
[ 图 6]  
[ 图 7]  
[ 图 8]  
[ 图 9]  
[ 图 10]  
[ 图 11]  
[ 图 12]  
[ 图 13]  
[ 图 14]  
[ 图 15]