一种控制擦除性能的方法以及装置
技术领域
本发明涉及存储领域,尤其涉及一种控制擦除性能的方法以及装置。
背景技术
目前NOR flash存储器采用隧穿的方式实现擦除操作,研究结果表明,随着温度的降低,电子活跃度也会随着降低,导致擦除时电子难以从浮栅层通过隧道氧化层隧穿到衬底,从而造成擦除时间增长。
参照图1,示出了现有NOR flash存储器擦除原理示意图,在执行擦除操作时,为了使电子从浮栅层隧穿到衬底,需要给栅端(G)加一个负压,衬底加正压,漏端(D)和源端(S)悬空,研究表明,擦除加压的时间越长,对NOR flash存储器中待擦除存储单元的擦除效果越好,擦除操作的成功率越大。
目前擦除操作过程中,时钟频率发生器(CLK发生器)的频率和擦除操作状态机中控制擦除加压时间的计数器的最大值,在出厂时是确定好的,然而,随着温度降低,电子活跃度下降,单次擦除加压操作的时间固定,擦除成功的概率下降,使得擦除操作所执行的擦除验证操作和擦除加压操作的循环周期也会增大,完成整个擦除所需要的时间就会越长,甚至最终无法完成擦除任务。
发明内容
本发明提供一种控制擦除性能的方法以及装置,解决了温度降低,单次擦除加压操作的时间固定,完成整个擦除操作所需要擦除加压时间就会越长,甚至最终无法完成擦除任务的问题。
为了解决上述技术问题,本发明实施例提供了一种控制擦除性能的方法,应用于NOR flash存储器,所述NOR flash存储器包括:温度传感器、擦除操作状态机、时钟频率发生器以及擦除存储单元,所述擦除操作状态机包括:计数器,所述温度传感器与所述擦除操作状态机连接,所述擦除操作状态机分别与所述时钟频率发生器和所述擦除存储单元连接,所述方法包括:
所述擦除操作状态机接收擦除操作指令,所述擦除操作指令包括:所需擦除存储单元的地址;
所述擦除操作状态机根据所述擦除操作指令,执行擦除加压操作,所述擦除加压操作为对所述擦除存储单元持续施加预设电压值的操作,所述持续施加预设电压值的时间为所述计数器的最大值与所述时钟频率发生器的周期的乘积;
其中,所述擦除操作状态机执行擦除加压操作,包括:
所述擦除操作状态机接收所述温度传感器发送的所述NOR flash存储器的工作温度;
所述擦除操作状态机根据所述工作温度,调整所述时间;
所述擦除操作状态机根据调整后的时间,完成所述擦除加压操作。
可选地,所述擦除操作状态机根据所述工作温度,调整所述时间,包括:
所述擦除操作状态机调用所述NOR flash存储器的工作温度区间与所述计数器的最大值的关系表,其中,工作温度越低的工作温度区间对应的计数器的最大值越大;
所述擦除操作状态机根据所述工作温度与所述关系表,调整所述计数器的最大值,以调整所述时间。
可选地,所述擦除操作状态机根据所述工作温度与所述关系表,调整所述计数器的最大值,包括:
所述擦除操作状态机根据所述工作温度,从所述NOR flash存储器的工作温度区间中确定所述工作温度所属的目标工作温度区间;
所述擦除操作状态机从所述关系表中查找对应于所述目标工作温度区间的目标最大值;
所述擦除操作状态机将所述计数器的最大值调整为所述目标最大值。
可选地,所述擦除操作状态机根据调整后的时间,完成所述擦除加压操作,包括:
所述擦除操作状态机判断所述计数器的当前计数值是否达到所述目标最大值;
若所述计数器未达到所述目标最大值,则所述擦除操作状态机在调整后的时间内持续执行本次所述擦除加压操作;
若所述计数器达到所述目标最大值,则所述擦除操作状态机结束本次所述擦除加压操作,执行下一次擦除验证操作,所述擦除验证操作为验证所述擦除存储单元的电压值是否小于第一预设电压,若小于第一预设电压则验证通过,若不小于第一预设电压则验证不通过。
可选地,若所述计数器达到所述目标最大值,则所述擦除操作状态机结束本次所述擦除加压操作,执行下一次擦除验证操作,包括:
所述擦除操作状态机结束本次所述擦除加压操作后,所述擦除操作状态机判断所述擦除加压操作的循环次数是否达到第一预设值;
若所述循环次数达到所述第一预设值,则所述擦除操作状态机结束所述擦除操作指令对应的擦除操作;
若所述循环次数未达到所述第一预设值,则所述擦除操作状态机继续执行下一次所述擦除验证操作。
可选地,在所述擦除操作状态机根据所述擦除操作指令,执行擦除加压操作之前,所述方法还包括:
所述擦除操作状态机验证所述擦除存储单元的电压值是否小于第一预设电压,若小于第一预设电压则所述擦除操作状态机结束所述擦除操作指令对应的擦除操作;
所述擦除操作状态机根据所述擦除操作指令,执行擦除加压操作,包括:
若不小于第一预设电压,则所述擦除操作状态机根据所述擦除操作指令,执行擦除加压操作。
本发明实施例还提供了一种控制擦除性能的装置,所述装置应用于NORflash存储器,所述NOR flash存储器包括:温度传感器、擦除操作状态机、时钟频率发生器以及擦除存储单元,所述擦除操作状态机包括:计数器,所述温度传感器与所述擦除操作状态机连接,所述擦除操作状态机分别与所述时钟频率发生器和所述擦除存储单元连接,所述装置包括:
第一接收模块,用于所述擦除操作状态机接收擦除操作指令,所述擦除操作指令包括:所需擦除存储单元的地址;
执行模块,用于所述擦除操作状态机根据所述擦除操作指令,执行擦除加压操作,所述擦除加压操作为对所述擦除存储单元持续施加预设电压值的操作,所述持续施加预设电压值的时间为所述计数器的最大值与所述时钟频率发生器的周期的乘积;
其中,所述执行模块包括:
第二接收模块,用于所述擦除操作状态机接收所述温度传感器发送的所述NORflash存储器的工作温度;
调整模块,用于所述擦除操作状态机根据所述工作温度,调整所述时间;
完成模块,用于所述擦除操作状态机根据调整后的时间,完成所述擦除加压操作。
可选地,所述调整模块包括:
调用关系表子模块,用于所述擦除操作状态机调用所述NOR flash存储器的工作温度区间与所述计数器的最大值的关系表,其中,工作温度越低的工作温度区间对应的计数器的最大值越大;
调整最大值子模块,用于所述擦除操作状态机根据所述工作温度与所述关系表,调整所述计数器的最大值,以调整所述时间;
判断子模块,用于所述擦除操作状态机判断所述计数器的当前计数值是否达到所述目标最大值;
继续执行子模块,用于若所述计数器未达到所述目标最大值,则所述擦除操作状态机在调整后的时间内持续执行本次所述擦除加压操作;
验证子模块,用于若所述计数器达到所述目标最大值,则所述擦除操作状态机结束本次所述擦除加压操作,执行下一次擦除验证操作,所述擦除验证操作为验证所述擦除存储单元的电压值是否小于第一预设电压,若小于第一预设电压则验证通过,若不小于第一预设电压则验证不通过;
所述调整最大值子模块包括:
确定区间从属子模块,用于所述擦除操作状态机根据所述工作温度,从所述NORflash存储器的工作温度区间中确定所述工作温度所属的目标工作温度区间;
查找目标从属子模块,用于所述擦除操作状态机从所述关系表中查找对应于所述目标工作温度区间的目标最大值;
调整最大值从属子模块,用于所述擦除操作状态机将所述计数器的最大值调整为所述目标最大值。
可选地,所述装置还包括:
判断执行子模块,用于所述擦除操作状态机结束本次所述擦除加压操作后,所述擦除操作状态机判断所述擦除加压操作的循环次数是否达到第一预设值;
还用于若所述循环次数达到所述第一预设值,则所述擦除操作状态机结束所述擦除操作指令对应的擦除操作;若所述循环次数未达到所述第一预设值,则所述擦除操作状态机继续执行下一次所述擦除验证操作。
可选地,所述装置还包括:
验证结束模块,用于所述擦除操作状态机验证所述擦除存储单元的电压值是否小于第一预设电压,若小于第一预设电压则所述擦除操作状态机结束所述擦除操作指令对应的擦除操作。
与现有技术相比,本发明提供的一种控制擦除性能的方法和装置,在执行擦除加压操作时,擦除操作状态机根据温度传感器发送的NOR flash存储器的工作温度,调整单次擦除加压操作的时间,完成擦除加压操作,控制擦除验证操作和擦除加压操作的循环周期,提高NOR flash存储器的擦除性能。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是现有NOR flash存储器擦除原理示意图;
图2是本发明实施例的一种控制擦除性能方法的流程图;
图3是本发明实施例步骤102之前的流程图;
图4是本发明实施例执行擦除加压操作步骤的具体流程图;
图5是本发明实施例步骤104的具体流程图;
图6是本发明实施例步骤104b的具体流程图;
图7是本发明实施例步骤105的具体流程图;
图8是本发明实施例步骤105的另一流程图;
图9是本发明实施例的设备示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图2示出了本发明实施例的一种控制擦除性能方法的流程图。该方法应用于NORflash存储器,NOR flash存储器包括:温度传感器、擦除操作状态机、时钟频率发生器以及擦除存储单元,擦除操作状态机包括:计数器,温度传感器与擦除操作状态机连接,擦除操作状态机分别与时钟频率发生器和擦除存储单元连接,控制擦除性能的方法包括如下步骤:
步骤101:擦除操作状态机接收擦除操作指令,擦除操作指令包括:所需擦除存储单元的地址。
本发明实施例中,NOR flash存储器包括:温度传感器、擦除操作状态机、时钟频率发生器以及擦除存储单元,其中温度传感器的作用是:检测NOR flash存储器工作温度的传感器,其将工作温度发送给擦除操作状态机,擦除操作状态机为NOR flash存储器内控制擦除状态的元件,其包括:计数器。时钟频率发生器(CLK发生器)为NOR flash存储器中产生时间周期的发生器,计数器为擦除操作状态机中计数的元件,两者结合起来,可以控制擦除操作状态机的每次擦除加压操作的时间,擦除存储单元为NOR flash存储器中需要执行擦除操作的存储单元,因为NOR flash存储器的自身特性,其是以块为单位执行擦除操作,所以执行擦除操作的存储单元可能存储着数据,也可能没有存储任何数据,存储着数据的存储单元执行擦除操作,则其内存储的数据将会被擦除,成为没有存储数据的存储单元。
擦除操作状态机接收由上位机发送的擦除操作指令,擦除操作指令中包括有擦除存储单元的地址,即需要执行擦除操作的存储单元的地址,擦除操作是指从接收擦除操作指令起,到完成待擦除存储单元擦除操作的整个过程。本发明实施例对以上所述不作详细限定,可以根据实际情况进行设置。
步骤102:擦除操作状态机根据擦除操作指令,执行擦除加压操作,擦除加压操作为对擦除存储单元持续施加预设电压值的操作,持续施加预设电压值的时间为计数器的最大值与时钟频率发生器的周期的乘积。
本发明实施例中,擦除操作状态机接收擦除操作指令后,根据擦除操作指令,执行擦除加压操作,所谓擦除加压操作是指:擦除操作状态机对擦除存储单元持续施加预设电压值的操作,持续施加预设电压值的时间即为本次擦除加压操作的时间,其大小为计数器的最大值与时钟频率发生器周期的乘积,假设计数器最大值为100,CLK发生器的频率为50赫兹,则CLK发生器的周期为0.02秒,那么单次擦除加压操作的时间就为0.02*100=2秒,计数器的最大值由擦除操作状态机设定,其计数规则由CLK发生器发出的脉冲信号决定,CLK发生器发出的脉冲信号每当上升沿出现时,计数器的计数加1,在100个上升沿后,计数器的计数清零,重新开始计数,预设电压值为NOR flash存储器在一般情况下,完成擦除操作所需对擦除存储单元施加的电压值,该值是结合大量仿真测试、实际测试和经验公式计算等方式综合得到。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
可选地,参照图3,步骤102之前,该方法还包括:
步骤1002:擦除操作状态机验证擦除存储单元的电压值是否小于第一预设电压,若小于第一预设电压,则擦除操作状态机结束擦除操作指令对应的擦除操作。
本发明实施例中,擦除操作状态机在执行擦除加压操作之前,擦除操作状态机在接收擦除操作指令后,首先执行一个擦除验证操作,验证擦除存储单元的电压值是否小于第一预设电压,第一预设电压为擦除操作的验证电压,NOR flash存储器规定存储单元阈值电压小于验证电压的,擦除操作成功,大于等于验证电压的,擦除操作失败。之所以执行擦除验证操作,是因为可能存在所需擦除存储单元阈值电压已经小于验证电压的情况,若是已经小于验证电压,则认为擦除成功,擦除操作状态机结束本次擦除操作。在执行擦除加压操作之前,擦除操作状态机需要对所需擦除存储单元执行擦除验证操作,若是所需擦除存储单元阈值电压大于等于验证电压,则验证不通过,才会执行擦除加压操作。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
可选地,参照图4,擦除操作状态机执行擦除加压操作具体包括以下步骤:
步骤103:擦除操作状态机接收温度传感器发送的NOR flash存储器的工作温度。
本发明实施例中,温度传感器会实时地将检测到的NOR flash存储器的工作温度发送给擦除操作状态机,该温度是随时变化的,一般情况下,NOR flash存储器的工作温度取决于外界环境温度和工作状况,假设NOR flash存储器工作在外界环境温度极低的情况,即使执行编程、擦除或者读取等操作,虽然随着使用时间越长,温度可能就越高,但外界温度导致NOR flash存储器工作温度不会升到很高。例如外界环境温度-23℃,NOR flash存储器开始工作时工作温度可能为-22℃,在工作一段时间后,温度可能上升到-20℃,执行编程、擦除或者读取等操作后,温度可能会上升到-10℃,外界环境温度极低,导致NOR flash存储器温度上升不会很高,甚至远达不到一般情况下正常室温;另一种情况,若是外界环境温度较合适或者较高,假设室温23℃,NOR flash存储器开始工作时工作温度可能为28℃,在工作一段时间后,温度可能上升到40℃,执行编程、擦除或者读取等操作后,温度可能会上升到70℃以上,这个温度差异比较大。在执行擦除加压操作过程时,擦除操作状态会接收到温度传感器发送的NOR flash存储器工作温度。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
步骤104:擦除操作状态机根据工作温度,调整时间。
本发明实施例中,擦除操作状态机接收到NOR flash存储器的工作温度后,根据该工作温度,调整擦除加压的持续加压时间。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
可选地,参照图5,步骤104包括:
步骤104a:擦除操作状态机调用NOR flash存储器的工作温度区间与计数器的最大值的关系表,其中,工作温度越低的工作温度区间对应的计数器的最大值越大。
本发明实施例中,擦除操作状态机执行擦除加压操作时,会调用NOR flash存储器的工作温度区间与计数器的最大值的关系表,该表为NOR flash存储器工作温度区间与计数器最大值的对应关系表,该对应关系表同样也是结合大量仿真测试、实际测试和经验公式计算等方式综合得到,工作温度越低的工作温度区间对应的计数器的最大值越大,例如在工作温度90℃以上区间,计数器最大值为五万,在工作温度61℃~90℃区间,计数器最大值为十万,在工作温度0℃~20℃区间,计数器最大值为五十万,在工作温度-10℃~0℃区间,计数器最大值为六十万,在工作温度-10℃以下区间,计数器最大值为八十万,需要说明的是,上述数据只是为了更好的解释本发明实施例而列举的数字,并不代表实际应用中的具体数字。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
步骤104b:擦除操作状态机根据工作温度与关系表,调整计数器的最大值,以调整时间。
本发明实施例中,擦除操作状态机根据工作温度与关系表,来调整计数器的最大值,例如此刻NOR flash存储器的工作温度为18℃,在工作温度0℃~20℃区间,则对应关系表中对应的计数器最大值为五十万,擦除操作状态机调整计数器的最大值为五十万,即调整本次擦除加压操作时间。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
可选地,参照图6,步骤104b包括:
步骤104b1:擦除操作状态机根据工作温度,从NOR flash存储器的工作温度区间中确定工作温度所属的目标工作温度区间。
本发明实施例中,擦除操作状态机在执行擦除加压操作时,擦除操作状态机根据工作温度,从NOR flash存储器的工作温度区间中确定工作温度所属的目标工作温度区间,例如NOR flash存储器的当前工作温度为-8℃,则其所属的目标工作温度区间为工作温度-10℃~0℃区间,NOR flash存储器的当前工作温度为98℃,则其所属的目标工作温度区间为工作温度90℃以上区间。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
步骤104b2:擦除操作状态机从关系表中查找对应于目标工作温度区间的目标最大值。
本发明实施例中,确定了目标工作温度区间后,擦除操作状态机从关系表中查找对应于目标工作温度区间的目标最大值,例如目标工作温度-10℃以下区间,对应计数器的目标最大值为八十万,目标工作温度0℃~20℃区间,对应计数器的目标最大值为五十万。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
步骤104b3:擦除操作状态机将计数器的最大值调整为目标最大值。
本发明实施例中,确定了计数器的目标最大值后,擦除操作状态机会将本次擦除加压操作时计数器的最大值调整为目标最大值。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
步骤105:擦除操作状态机根据调整后的时间,完成擦除加压操作。
本发明实施例中,擦除操作状态机调整计数器的最大值后,单次擦除加压操作的时间就会改变,例如执行第一次擦除加压操作时,计数器最大值为十万,CLK发生器的频率为50000赫兹,则CLK发生器的周期为0.00002秒,那么第一次擦除加压操作的时间就为2秒;执行第二次擦除加压操作时,计数器最大值为三十万,CLK发生器的频率为50000赫兹,则CLK发生器的周期为0.00002秒,那么第二次擦除加压操作的时间就为6秒,则擦除操作状态机根据调整后的时间,完成擦除加压操作,即第一次擦除加压操作持续加压的时间为2秒,第二次擦除加压操作持续加压的时间为6秒。
可选地,参照图7,步骤105具体包括:
步骤105a:擦除操作状态机判断计数器的当前计数值是否达到目标最大值。
本发明实施例中,在单次擦除加压操作时,擦除操作状态机需要判断计数器的当前计数值是否达到目标最大值,例如前次擦除加压操作时,NORflash存储器工作温度为18℃,其属于工作温度0℃~20℃区间,对应的计数器最大值为五十万,而本次擦除加压操作时,NOR flash存储器工作温度为-8℃,其属于工作温度-10℃~0℃区间,对应的计数器最大值是六十万,针对本次擦除加压操作,擦除操作状态机需要判断本次加压操作过程中,计数器是否达到本次计数器的最大值六十万。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
步骤105b:若计数器未达到目标最大值,则擦除操作状态机在调整后的时间内持续执行本次擦除加压操作。
本发明实施例中,若是擦除操作状态机判断本次计数器未达到目标最大值,假设本次调整后最大值为十万,而计数器此刻计数到六万,则擦除操作状态机继续执行本次擦除加压操作,直到计数器计数到十万为止。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
步骤105c:若计数器达到目标最大值,则擦除操作状态机结束本次擦除加压操作,执行下一次擦除验证操作,擦除验证操作为验证擦除存储单元的电压值是否小于第一预设电压,若小于第一预设电压则验证通过,若不小于第一预设电压则验证不通过。
本发明实施例中,在计时器计数达到调整后的最大值(即目标最大值)时,擦除操作状态机就会结束本次擦除加压操作,执行下一次擦除验证操作,验证在本次擦除加压操作后,擦除存储单元阈值电压是否小于验证电压,若是小于则通过验证,若是不小于则验证不通过,需要再一次执行擦除加压操作。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
可选地,参照图8,步骤105c包括:
步骤105c1:擦除操作状态机结束本次擦除加压操作后,擦除操作状态机判断擦除加压操作的循环次数是否达到第一预设值。
本发明实施例中,擦除操作状态机接收擦除操作指令后,首先执行擦除验证操作,若是验证不通过,则执行第一次擦除加压操作,第一次擦除加压操作结束时,即为第一次擦除循环,擦除循环是指:擦除操作状态机执行第一次擦除验证操作,若是验证不通过,则执行第一次擦除加压操作,该次擦除加压操作结束时,即为第一次擦除循环,其中完成上述两个步骤,执行第一次擦除验证操作,则擦除验证操作循环次数为1,执行第一次擦除加压操作,则擦除加压操作循环次数为1,在第一次擦除加压操作结束后,擦除操作状态机就执行第二次擦除验证操作,若是验证不通过,则执行第二次擦除加压操作,第二次擦除加压操作结束时,即为第二次擦除循环,执行第二次擦除验证操作,则擦除验证操作循环次数为2,执行第二次擦除加压操作,则擦除加压操作循环次数为2,在第二次擦除加压操作结束后,擦除操作状态机就执行第三次擦除验证操作,若是验证不通过,则执行第三次擦除加压操作,第三次擦除加压操作结束时,即为第三次擦除循环,执行第三次擦除验证操作,则擦除验证操作循环次数为3,执行第三次擦除加压操作,则擦除加压操作循环次数为3,依次类推,在每次执行擦除验证操作之前,擦除操作状态机需要判断擦除加压操作的循环次数是否达到第一预设值,第一预设值为人为设定的一个上限值,设定该值是为了使得NOR flash存储器更高效率的工作,假设一次擦除操作,因为各方面的原因,导致擦除存储单元阈值电压无法降低到验证电压以下,若是没有循环次数上限,那么擦除操作状态机需要无休止地执行擦除加压操作,则NOR flash存储器就会永远处于擦除操作状态,相当于死机,无法处理其他任何工作。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
步骤105c2:若循环次数达到第一预设值,则擦除操作状态机结束擦除操作指令对应的擦除操作。
本发明实施例中,若是循环次数达到第一预设值,例如第一预设值为六十万次,则执行擦除加压操作的循环次数最高为六十万次,当达到该数值后,则擦除操作状态机不会再执行擦除加压操作,假如第六十万次循环过程中擦除验证操作通过,则本次擦除操作成功,假如第六十万次循环过程中擦除验证操作未通过,则本次擦除操作操作失败,擦除存储单元阈值电压没有降低到验证电压以下。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
步骤105c3:若循环次数未达到第一预设值,则擦除操作状态机继续执行下一次擦除验证操作。
本发明实施例中,若是循环次数未达到第一预设值,并且擦除验证操作没有通过,假设并没有达到六十万,则擦除操作状态机将执行下一次擦除验证操作。本发明实施例对此不作详细限定,可以根据实际情况进行设置。
举例说明,参照图9,示出了本发明实施例的设备示意图,NOR flash存储器包括:温度传感器、擦除操作状态机、时钟频率发生器和擦除存储单元,擦除操作状态机包括:计数器,温度传感器与擦除操作状态机连接,擦除操作状态机分别与擦除存储单元和时钟频率发生器连接,擦除操作状态机接收上位机发送的擦除操作指令,该擦除操作指令中会包括有擦除存储单元的地址,即需要执行擦除操作的擦除存储单元,擦除操作状态机首先执行擦除验证操作,验证对应地址的擦除存储单元阈值电压是否小于验证电压,若小于,则本次擦除操作结束,本次擦除操作成功;若不小于,则擦除操作状态机将执行擦除加压操作。
假设以-2.0V电压执行本次擦除操作,NOR flash存储器的工作温度为18℃,执行第一次擦除验证操作,但擦除验证操作未通过,则擦除操作状态机将执行第一次擦除加压操作,擦除操作状态机接收到温度传感器发送的NOR flash存储器工作温度为18℃,调用关系表,确定工作温度18℃在工作温度区间表中的所属为工作温度0℃~20℃区间,其对应的计数器最大值为五十万,则擦除操作状态机调整第一次擦除加压操作计数器最大值为五十万,CLK发生器的频率为50000赫兹,则CLK发生器的周期为0.00002秒,那么第一次擦除加压操作的时间就为10秒,即擦除操作状态机持续以-2.0V电压对擦除存储单元加压10秒,使得擦除存储单元阈值电压下降。此时擦除加压操作的循环次数为1,擦除验证操作的循环次数为1,之后将执行第二次擦除验证操作。
在执行第二次擦除验证操作之前,擦除操作状态机首先判断擦除加压操作的循环次数是否达到上限值,若未达到上限值,则执行第二次擦除验证操作。如果第二次擦除验证操作验证未通过,此时需要执行第二次擦除加压操作,擦除操作状态机接收到温度传感器发送的NOR flash存储器工作温度为-2℃,调用关系表,确定工作温度-2℃在工作温度区间表中的所属为工作温度-10℃~0℃区间,其对应的计数器最大值为六十万,则擦除操作状态机调整第二次擦除加压操作计数器最大值为六十万(即从五十万调整到六十万),CLK发生器的频率为50000赫兹,则CLK发生器的周期为0.00002秒,那么第二次擦除加压操作的时间就为12秒,即擦除操作状态机持续以-2.0V电压对擦除存储单元加压12秒,使得擦除存储单元阈值电压下降。此时擦除加压操作的循环次数为2,擦除验证操作的循环次数为2,之后将执行第三次擦除验证操作。
在执行第三次擦除验证操作之前,擦除操作状态机首先判断擦除加压操作的循环次数是否达到上限值,若未达到上限值,则执行第三次擦除验证操作。如果第三次擦除验证操作验证未通过,此时需要执行第三次擦除加压操作,擦除操作状态机接收到温度传感器发送的NOR flash存储器工作温度为-16℃,调用关系表,确定工作温度-16℃在工作温度区间表中的所属为工作温度-10℃以下区间,其对应的计数器最大值为八十万(即从六十万调整到八十万),则擦除操作状态机调整第三次擦除加压操作计数器最大值为八十万,CLK发生器的频率为50000赫兹,则CLK发生器的周期为0.00002秒,那么第三次擦除加压操作的时间就为16秒,即擦除操作状态机持续以-2.0V电压对擦除存储单元加压16秒,使得擦除存储单元阈值电压下降。此时擦除加压操作的循环次数为3,擦除验证操作的循环次数为3,之后执行第四次擦除验证操作。
在执行第四次擦除验证操作之前,擦除操作状态机首先判断擦除加压操作的循环次数是否达到上限值,若未达到上限值,则执行第四次擦除验证操作。如果第四次擦除验证操作,验证通过,即待擦除存储单元阈值电压小于验证电压,则本次擦除操作结束,并且擦除成功。
假如上述过程中,擦除加压操作的循环次数上限为4次,擦除操作状态机首先判断擦除加压操作的循环次数达到上限值,擦除操作状态机将结束本次擦除操作,而在第4次擦除验证操作后,若待擦除存储单元阈值电压小于验证电压,则本次擦除操作成功;若待擦除存储单元阈值电压不小于验证电压,则执行第4次擦除加压操作,执行第4次擦除加压操作后,结束本次擦除操作。
可选地,本发明实施例一种控制擦除性能的装置,该装置应用于NORflash存储器,NOR flash存储器包括:温度传感器、擦除操作状态机、时钟频率发生器以及擦除存储单元,擦除操作状态机包括:计数器,温度传感器与擦除操作状态机连接,擦除操作状态机分别与时钟频率发生器和擦除存储单元连接,控制擦除性能的装置包括:
第一接收模块,用于擦除操作状态机接收擦除操作指令,擦除操作指令包括:所需擦除存储单元的地址;
执行模块,用于擦除操作状态机根据擦除操作指令,执行擦除加压操作,擦除加压操作为对擦除存储单元持续施加预设电压值的操作,持续施加预设电压值的时间为计数器的最大值与时钟频率发生器的周期的乘积;
其中,执行模块包括:
第二接收模块,用于擦除操作状态机接收温度传感器发送的NOR flash存储器的工作温度;
调整模块,用于擦除操作状态机根据工作温度,调整时间;
完成模块,用于擦除操作状态机根据调整后的时间,完成擦除加压操作。
可选地,调整模块包括:
调用关系表子模块,用于擦除操作状态机调用NOR flash存储器的工作温度区间与计数器的最大值的关系表,其中,工作温度越低的工作温度区间对应的计数器的最大值越大;
调整最大值子模块,用于擦除操作状态机根据工作温度与关系表,调整计数器的最大值,以调整时间;
判断子模块,用于擦除操作状态机判断计数器的当前计数值是否达到目标最大值;
继续执行子模块,用于若计数器未达到目标最大值,则擦除操作状态机在调整后的时间内持续执行本次擦除加压操作;
验证子模块,用于若计数器达到目标最大值,则擦除操作状态机结束本次擦除加压操作,执行下一次擦除验证操作,擦除验证操作为验证擦除存储单元的电压值是否小于第一预设电压,若小于第一预设电压则验证通过,若不小于第一预设电压则验证不通过;
调整最大值子模块包括:
确定区间从属子模块,用于擦除操作状态机根据工作温度,从NOR flash存储器的工作温度区间中确定工作温度所属的目标工作温度区间;
查找目标从属子模块,用于擦除操作状态机从关系表中查找对应于目标工作温度区间的目标最大值;
调整最大值从属子模块,用于擦除操作状态机将计数器的最大值调整为目标最大值。
可选地,控制擦除性能的装置还包括:
判断执行子模块,用于擦除操作状态机结束本次擦除加压操作后,擦除操作状态机判断擦除加压操作的循环次数是否达到第一预设值;
还用于若循环次数达到第一预设值,则擦除操作状态机结束擦除操作指令对应的擦除操作;若循环次数未达到第一预设值,则擦除操作状态机继续执行下一次擦除验证操作;
验证结束模块,用于擦除操作状态机验证擦除存储单元的电压值是否小于第一预设电压,若小于第一预设电压则擦除操作状态机结束擦除操作指令对应的擦除操作。
通过上述实施例,本发明在擦除操作时,首先执行擦除验证操作,判断待擦除存储单元阈值电压是否小于验证电压,若擦除存储单元阈值电压小于验证电压,则直接结束擦除操作;在不小于时,擦除操作状态机执行擦除加压操作,擦除操作状态机根据温度传感器发送的NOR flash存储器的工作温度,查找对应的工作温度区间,利用关系表,确定单次擦除加压操作计数器的最大值,根据最大值来确定擦除加压时间,在达到计数最大值结束擦除加压操作后,根据擦除加压操作的循环次数,决定是否执行下一次擦除验证操作,达到控制擦除验证操作和擦除加压操作的循环周期,提高NOR flash存储器的擦除性能。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。