一种随机存储器的刷新方法及装置的制作方法

文档序号:6775656阅读:155来源:国知局
专利名称:一种随机存储器的刷新方法及装置的制作方法
技术领域
本发明涉及随机存储器,尤其涉及一种随机存储器的刷新方法及装置。
背景技术
随机存储器是容量数据处理电路的重要组成部分,随着数据处理技术的发展,对于随机存储器的容量和性能提出了越来越高的要求。以同步动态随机存储器(SDRAM)为例,SDRAM容量大、读写速度快、支持突发式读写及价格相对低廉,因而得到了广泛的应用。尤其现在的移动手持设备,如手机、MP4等,更加依赖SDRAM。
随机存储器为易挥发性存储器,因此必须在一定周期内对每个地址进行刷新,否则这些地址所存的数据就可能丢失。进行刷新时,由SDRAM的刷新装置向SDRAM发送刷新命令,SDRAM根据该刷新命令执行刷新操作。以要求在T时间内,刷新N次的SDRAM为例,现有技术中有一种方法为在每段T时间内的某个固定时刻,比如开始时刻,连续向SDRAM发送N次刷新命令,SDRAM根据刷新命令进行N次连续刷新。由于每次刷新不是立刻完成的,而且SDRAM进行刷新时是不能被访问的,需要等到刷新过程结束,才能访问,所以在第一种方法中,会有很长一段时间不能访问SDRAM,对于那些对访问时间要求较高的设备来说,是无法满足要求的。
为此,提出的另一种方法为在每段T/N时间内的某个固定时刻,比如开始时刻,向SDRAM发送一次刷新命令,SDRAM根据刷新命令进行一次刷新,即将N次刷新平均分布到T时间内。第二种方法中,虽然将刷新时间进行了平均分配,但实际应用中对存储器的访问通常是不均匀的,因此第二种方法没有充分考虑到访问密集度的情况,如果在一段时间内,访问密集度较大,则此时的刷新仍然会影响到访问的效率,使访问的可靠性降低。
可见,现有的刷新技术,都会影响到访问效率,使访问的可靠性降低。

发明内容
有鉴于此,本发明一方面提供一种随机存储器的刷新方法,另一方面提供一种随机存储器的刷新装置。能够提高访问效率和可靠性。
本发明所提供的随机存储器的刷新方法,包括预先设置访问密集度与刷新间隔、刷新次数的映射关系,该方法包括A、计算访问密集度,根据所计算的访问密集度及所述设置的映射关系确定刷新间隔和刷新次数,按照所确定的刷新间隔和刷新次数控制随机存储器进行刷新;B、重复执行步骤A,直至在刷新要求的规定时间内完成刷新要求规定次数的刷新。
其中,所述按照所确定的刷新间隔和刷新次数控制随机存储器进行刷新为按照所确定的刷新间隔和刷新次数向随机存储器发送刷新命令。
其中,所述访问密集度与刷新间隔、刷新次数的映射关系包括访问密集度的范围区间与刷新间隔、刷新次数的映射关系。
较佳地,设置时间临界值;该方法进一步包括确定在时间临界值内未完成规定次数的刷新时,控制随机存储器在规定时间的剩余时间内完成剩余次数的刷新。
其中,所述控制随机存储器在规定时间的剩余时间内完成剩余次数的刷新为按照每次刷新所需要的最小时间间隔向随机存储器发送剩余次数的刷新命令;或者按照每次刷新在剩余时间内的平均时间间隔向随机存储器发送剩余次数的刷新命令。
其中,所述时间临界值为预先设置的静态时间临界值。
所述静态时间临界值为根据每次刷新所需要的最小时间间隔和刷新要求中的规定次数进行设置。
其中,所述时间临界值为动态计算的时间临界值;并且所述动态计算的时间临界值为根据刷新时间和刷新次数的变化,动态计算本次规定时间内的剩余时间和剩余次数所需要的最小剩余时间,如果动态计算的剩余时间大于剩余次数所需要的最小剩余时间,且与最小剩余时间的差值达到预设的门限值时,将该剩余时间临时作为本次规定时间内刷新的时间临界值。
其中,所述计算访问密集度具体包括设置采样时钟周期数;记录在该采样时钟周期数内,随机存储器被访问的时钟周期数;计算随机存储器被访问的时钟周期数占用采样时钟周期数的百分比,得到访问密集度;或者,所述根据访问随机存储器的时间计算访问密集度具体包括设置采样时钟周期数;记录在该采样时钟周期数内,随机存储器空闲的时钟周期数;计算随机存储器空闲的时钟周期数占用采样时钟周期数的百分比,得到访问密集度。
本发明所提供的随机存储器的刷新装置,包括刷新决策单元和刷新控制单元,其中,刷新决策单元,用于存储访问密集度与刷新间隔、刷新次数的映射关系;计算访问密集度,根据所计算的访问密集度及所述存储的映射关系确定刷新间隔和刷新次数,向刷新控制单元发送按照刷新间隔和刷新次数进行刷新的控制命令,直至在刷新要求的规定时间内完成刷新要求规定次数的刷新;刷新控制单元,用于接收来自刷新决策单元的按照刷新间隔和刷新次数进行刷新的控制命令,根据所接收的控制命令控制随机存储器进行刷新。
其中,所述刷新决策单元包括刷新策略存储模块和刷新策略确定模块,其中,刷新策略存储模块,用于存储访问密集度与刷新间隔、刷新次数的映射关系,并提供给刷新策略确定模块;刷新策略确定模块,用于计算访问密集度,根据所计算的访问密集度及来自刷新策略存储模块的所述映射关系确定刷新间隔和刷新次数,向刷新控制单元发送按照刷新间隔和刷新次数进行刷新的控制命令,直至在刷新要求的规定时间内完成刷新要求规定次数的刷新。
其中,所述刷新控制单元包括主控制模块和信号生成模块,其中,主控制模块,用于接收来自刷新决策模块的按照刷新间隔和刷新次数进行刷新的控制命令,根据所接收的控制命令,按照刷新间隔和刷新次数向信号生成模块发送刷新命令生成指令;信号生成模块,用于根据来自主控制模块的刷新命令生成指令,生成刷新命令,发送给随机存储器。
较佳地,所述刷新策略存储模块进一步用于存储预先设置的时间临界值,并提供给刷新策略确定模块;所述刷新策略确定模块进一步用于确定在时间临界值内未完成规定次数的刷新时,向刷新控制单元发送在剩余时间内完成剩余次数刷新的控制命令;所述刷新控制单元进一步用于根据所接收的控制命令,控制随机存储器在剩余时间内完成剩余次数的刷新。
较佳地,所述刷新策略确定模块进一步用于根据刷新时间和刷新次数的变化,动态计算本次规定时间内的剩余时间和剩余次数所需要的最小剩余时间,如果动态计算的剩余时间大于剩余次数所需要的最小剩余时间,且与最小剩余时间的差值达到预设的门限值时,向刷新控制单元发送在剩余时间内完成剩余次数刷新的控制命令。
较佳地,所述刷新控制单元包括主控制模块和信号生成模块,其中,主控制模块,用于接收来自刷新决策模块的按照刷新间隔和刷新次数进行刷新的控制命令,根据所接收的控制命令,按照刷新间隔和刷新次数向信号生成模块发送刷新命令生成指令;接收来自刷新决策模块的在剩余时间内完成剩余次数刷新的控制命令,根据所接收的控制命令,按照每次刷新所需要的最小时间间隔向信号生成模块发送剩余次数的刷新命令生成指令;或者按照每次刷新在剩余时间内的平均时间间隔向信号生成模块发送剩余次数的刷新命令生成指令;信号生成模块,用于根据来自主控制模块的刷新命令生成指令,生成刷新命令,发送给随机存储器。
其中,随机存储器的刷新装置可设置在随机存储器的控制器中,且所述装置中的主控制模块可设置在随机存储器控制器中的控制器单元中,所述装置中的信号生成模块可设置在随机存储器控制器中的控制信号生成器单元中。
从上述方案可以看出,本发明中预先设置访问密集度与刷新间隔、刷新次数的映射关系;计算访问密集度,根据所计算的访问密集度及所设置的映射关系确定刷新间隔和刷新次数,按照所确定的刷新间隔和刷新次数对随机存储器进行刷新。本发明通过将访问密集度与刷新间隔、刷新次数的映射关系设置为在访问密集时,刷新间隔长、刷新次数少;在访问稀疏时,刷新间隔短、刷新次数多,使得在访问密集时,减少了刷新次数,而在访问稀疏时,增加了刷新次数,从而在保证刷新要求的情况下,提高访问的效率和可靠性。


图1为本发明实施例中随机存储器的刷新方法流程图。
图2为本发明实施例中随机存储器的刷新装置结构示意图。
图3为本发明实施例中一个具体应用随机存储器刷新装置的实例的结构示意图。
具体实施例方式
本发明的基本思想是设置访问密集度与刷新间隔、刷新次数的映射关系;计算访问密集度,根据所计算的访问密集度及所设置的映射关系确定刷新间隔和刷新次数,按照所确定的刷新间隔和刷新次数控制随机存储器进行刷新,直至在刷新要求的规定时间内完成刷新要求规定次数的刷新。
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明进一步详细说明。
随机存储器一般都有刷新要求,即要求在规定时间内完成规定次数的刷新,如要求在T时间内完成N次刷新等。因此,本发明的基本思想是指在每个规定时间内,根据访问密集度,控制对随机存储器进行刷新,直到刷新次数达到本规定时间内的规定次数时,等待下一个规定时间的到来。
此外,为了确保在规定时间内完成规定次数的刷新,可以设置时间临界值,用以在达到时间临界值时未完成规定次数刷新的情况下,控制随机存储器在剩余时间内完成剩余次数的刷新,之后,等待下一个规定时间的到来。
其中,访问密集度的计算方法可以为预先设置采样时钟周期数,记录在该采样时钟周期数内,随机存储器被访问的时钟周期数,计算随机存储器被访问的时钟周期数占用采样时钟周期数的百分比,得到访问密集度。
或者,访问密集度的计算方法还可以为预先设置采样时钟周期数,记录在该采样时钟周期数内,随机存储器空闲的时钟周期数;计算随机存储器空闲的时钟周期数占用采样时钟周期数的百分比,得到访问密集度。
下面结合具体实施例对本发明中随机存储器的刷新方法进行详细描述。
本实施例中,为了保证在规定时间内完成规定次数的刷新,设置了时间临界值。并且本实施例中,预先设置计算访问密集度所需的采样时钟周期数。
参见图1,图1为本发明实施例中随机存储器的刷新方法流程图。该流程包括如下步骤步骤101,设置访问密集度与刷新间隔、刷新次数的映射关系;设置采样时钟周期数;设置时间临界值。
访问密集度与刷新间隔、刷新次数的映射关系的设置方法如下根据刷新要求及大致的访问情况或经验,设置访问密集度和刷新间隔、刷新次数的映射关系,实际设置时,可设置访问密集度的范围区间和刷新间隔、刷新次数的映射关系,即当计算出的访问密集度在某一个区间时,可在下一次或连续下几次(刷新次数)都按照一定的时间间隔(刷新间隔)进行刷新,如可设置表一所示的映射关系表

表一表一中将访问密集度划分为5个区间,并且每个区间对应一个刷新间隔值和一个刷新次数值。实际应用中,范围区间的划分可以有很多种,P1至P5以及N1至N5的取值也可以有很多种,具体可根据实际情况进行区间划分及取值,本实施例中仅以表一中的划分及取值为例进行说明。
本实施例中,当访问密集度位于区间(0,20]时,对应的刷新间隔为P1,刷新次数为N1,即访问密集度位于区间(0,20]时,进行N1次的刷新,并且每次刷新间隔时间为P1。之后,再根据新的访问密集度及其刷新间隔和刷新次数进行相应的刷新。对于表一中的其它访问密集度与其刷新间隔和刷新次数的关系与此相同,此处不再赘述。
其中,访问密集度可以是实际的访问时间密度,也可以是实际的空闲时间密度。
采样时钟周期数的设置方法如下采样时钟周期数可以根据实际情况进行相应取值,以工作在100MHz,刷新要求为在64ms内刷新4096次的SDRAM为例,即规定时间为64ms,规定次数为4096次,根据工作频率及刷新要求计算出平均每次刷新的时间间隔为1562个时钟周期。本步骤中,在设置采样时钟周期数时,可以设置为平均每次刷新的时间间隔的十分之一左右,如可以选取100个时钟周期作为采样时钟周期数;或者,实际应用中也可以根据经验值,对采样时钟周期进行设置。
时间临界值的设置方法如下对于时间临界值的设置可以有两种方法,第一种方法为预先设置静态的时间临界值,为了确保在刷新要求的规定时间内完成刷新要求规定次数的刷新,可采取最保守的时间临界值设置,即假设到达该时间临界值之前访问密集度一直都很大,并且一次刷新都未进行,则需要在临界值之后的剩余时间内完成所有的刷新次数。因此设置时,可按照每次刷新所需要的最小时间间隔进行设置,用最小时间间隔乘以规定次数,得到所需的最小剩余时间,然后用规定时间减去最小剩余时间,得到时间临界值。
仍以工作在100MHz,刷新要求为在64ms内刷新4096次的SDRAM为例,假设每次刷新所需要的最小时间间隔为8个时钟周期,则4096次刷新所需要的最小剩余时间为4096×8=32768个时钟周期,约为0.33ms,因此可设置时间临界值为64-0.33=63.67ms,为了更加保险,可将时间临界值设置为63ms,或62ms等,在保证访问顺畅的同时,只要确保剩余时间内能够完成剩余次数的刷新即可。
对于时间临界值设置的第二种方法为动态设置时间临界值,即随着在规定时间内刷新的不断进行,根据刷新时间和刷新次数的变化,动态计算剩余时间和剩余次数所需要的最小剩余时间,当剩余时间大于且接近剩余次数所需要的最小剩余时间时,将该剩余时间临时作为本次规定时间内刷新的时间临界值。进一步地,也可以设置一个门限值,当动态计算的剩余时间大于剩余次数所需要的最小剩余时间,且与最小剩余时间的差值达到所设置的门限值时,将该剩余时间临时作为本次规定时间内刷新的时间临界值。
当然,当采用第二种方法设置时间临界值时,该时间临界值的计算与设置并非是在本步骤101中完成,而是在整个流程运行过程中动态计算的,放在本步骤中进行描述,只是为了和第一种方法进行对比。
步骤102,计算访问密集度,根据访问密集度及步骤101中设置的映射关系,确定刷新间隔和刷新次数。
本步骤中,通过在步骤101中设置的采样时钟周期数内,记录随机存储器被访问的时钟周期数,计算该访问的时钟周期数占用采样时钟周期数的百分比,得到访问密集度;或者通过在采样时钟周期数内,记录随机存储器空闲的时钟周期数,计算该空闲的时钟周期数占用采样时钟周期数的百分比,得到访问密集度。具体采用何种计算方法可根据表一中访问密集度的含义而决定。
计算出访问密集度后,根据所计算的访问密集度及步骤101中设置的映射关系,确定刷新间隔和刷新次数。
步骤103,按照所确定的刷新间隔和刷新次数控制随机存储器进行刷新。
具体实现时,可按照所确定的刷新间隔和刷新次数向随机存储器发送刷新命令。
步骤104,判断是否达到时间临界值,如果未达到,则执行步骤105;否则,执行步骤106。
如果时间临界值是采用步骤101中描述的第一种方法进行设置的,则本步骤中直接和设置的静态时间临界值进行对比判断即可。
如果时间临界值是采用步骤101中描述的第二种方法进行设置的,则本步骤中,则需要判断剩余时间是否大于且接近于剩余次数所需要的最小剩余时间,如果是,则判断达到时间临界值。或者预先设置了门限值,则本步骤中需要判断剩余时间是否大于剩余次数所需要的最小剩余时间,且与最小剩余时间的差值达到所设置的门限值,如果是,则判断达到时间临界值。
步骤105,判断刷新次数是否达到规定次数,如果是,则执行步骤107;否则,返回执行步骤102。
步骤106,判断刷新次数是否达到规定次数,如果是,则执行步骤107;否则,执行步骤108。
如果时间临界值是采用步骤101中描述的第二种方法进行设置的,则本步骤中,无需判断刷新次数是否达到规定次数,而是直接执行步骤108。
步骤107,结束本次规定时间内的刷新,之后继续执行步骤109。
步骤108,控制随机存储器在剩余时间内完成剩余次数的刷新,之后继续执行步骤109。
本步骤中,如果步骤101中设置的时间临界值为63ms,且达到63ms时,已经完成4000次的刷新,则控制随机存储器在最后的1ms内完成剩余的96次。
具体实现时,可按照每次刷新所需要的最小时间间隔向随机存储器发送剩余次数的刷新命令。如仍以随机存储器所需的最小时间间隔为8个时钟周期为例,则可以在剩余时间的开始时刻,按照剩余次数每隔8个时钟周期向随机存储器发送一次刷新命令。
或者具体实现时,按照每次刷新在剩余时间内的平均时间间隔向随机存储器发送剩余次数的刷新命令,即将剩余次数平均分布到剩余时间内。以剩余时间为1ms,剩余次数为96次为例,则1ms约为99968个时钟周期,对于96次来说,平均每次的时间间隔为99968÷96=1041个时钟周期,为了保险起见,平均时间间隔可以取值小于1041,如取值1000等,则可以在剩余时间的开始时刻,按照剩余次数每隔1000个时钟周期向随机存储器发送一次刷新命令。
上述两种情况可在剩余时间的开始时刻即发送第一个刷新命令。
步骤109,判断下一个规定时间是否到来,如果到来,则返回执行步骤102。
至此,本流程结束。
图1所示流程中,步骤103与步骤104没有绝对的先后关系,可以在步骤103执行的同时,对步骤104的时间进行判断。
其中,步骤102中计算访问密集度时,可以在步骤103完成本次确定的刷新次数之后的采样时钟周期内进行,也可以在最后一次刷新进行之前的采样时钟周期内进行。举例如下如果预先设置的采样时钟周期数为100个时钟周期,本次确定的刷新间隔为1000个时钟周期,刷新次数为3,则计算访问密度时,可以在完成最后一次刷新之后的100个时钟周期内进行,也可以是在最后一次刷新进行之前的100个时钟周期内,即最后一次刷新进行之前,刷新间隔时间计时到900个时钟时进行。
下面再对基于图1所示方法的随机存储器的装置进行详细描述。
参见图2,图2为本发明实施例中随机存储器的刷新装置结构示意图。如图2所示,该装置包括刷新决策单元210和刷新控制单元220。
其中,刷新决策单元210,用于存储访问密集度与刷新间隔、刷新次数的映射关系;计算访问密集度,根据所计算的访问密集度及所述存储的映射关系确定刷新间隔和刷新次数,向刷新控制单元220发送按照刷新间隔和刷新次数进行刷新的控制命令,直至在刷新要求的规定时间内完成刷新要求的规定次数的刷新。
其中,可以通过预先配置刷新策略,将访问密集度与刷新间隔、刷新次数的映射关系配置在刷新决策单元210中。
刷新决策单元210在进行访问密集度计算时,可以通过在预先设置的采样周期数对访问信号进行采样,记录随机存储器被访问的时钟周期数,计算该访问的时钟周期数占用采样时钟周期数的百分比,得到访问密集度;或者通过在预设的采样时钟周期数内,记录随机存储器空闲的时钟周期数,计算该空闲的时钟周期数占用采样时钟周期数的百分比,得到访问密集度。具体采用何种计算方法可根据预先配置的映射关系中访问密集度的含义而决定。
刷新控制单元220,用于接收来自刷新决策单元210的按照刷新间隔和刷新次数进行刷新的控制命令,根据所接收的控制命令控制随机存储器进行刷新。
如图2所示,具体实现时,刷新决策单元210可具体包括刷新策略存储模块211和刷新策略确定模块212。
其中,刷新策略存储模块211,用于存储访问密集度与刷新间隔、刷新次数的映射关系,并提供给刷新策略确定模块212。
可通过预先配置刷新策略,将访问密集度与刷新间隔、刷新次数的映射关系配置在刷新策略存储模块211中。
刷新策略确定模块212,用于计算访问密集度,根据所计算的访问密集度及来自刷新策略存储模块211的所述映射关系确定刷新间隔和刷新次数,向刷新控制单元220发送按照刷新间隔和刷新次数进行刷新的控制命令,直至在刷新要求的规定时间内完成刷新要求的规定次数的刷新。
刷新策略确定模块212在进行访问密集度计算时,可以通过在预先设置的采样周期数内对访问信号进行采样,记录随机存储器被访问的时钟周期数,计算该访问的时钟周期数占用采样时钟周期数的百分比,得到访问密集度;或者通过在预设的采样时钟周期数内,记录随机存储器空闲的时钟周期数,计算该空闲的时钟周期数占用采样时钟周期数的百分比,得到访问密集度。具体采用何种计算方法可根据预先配置的映射关系中访问密集度的含义而决定。
其中,刷新策略存储模块211和刷新策略确定模块212可进一步为刷新策略存储模块211进一步用于存储预先设置的时间临界值,并提供给刷新策略确定模块212。
刷新策略确定模块212进一步用于从刷新策略存储模块211中获取时间临界值,确定在时间临界值内未完成规定次数的刷新时,向刷新控制单元220发送在剩余时间内完成剩余次数刷新的控制命令。
则刷新控制单元220进一步用于根据所接收的在剩余时间内完成剩余次数刷新的控制命令,控制随机存储器在剩余时间内完成剩余次数的刷新。
或者,刷新策略存储模块211和刷新策略确定模块212可进一步为刷新策略存储模块211不用于存储预先设置的时间临界值,而是刷新策略确定模块212进一步用于根据图1所示流程步骤101中所描述的设置时间临界值的第二种方法动态计算时间临界值,确定在时间临界值内未完成规定次数的刷新时,向刷新控制单元220发送在剩余时间内完成剩余次数刷新的控制命令。
则刷新控制单元220进一步用于根据所接收的在剩余时间内完成剩余次数刷新的控制命令,控制随机存储器在剩余时间内完成剩余次数的刷新。
具体实现时,刷新控制单元220可具体包括主控制模块221和信号生成模块222。
其中,主控制模块221,用于接收来自刷新决策模块210的按照刷新间隔和刷新次数进行刷新的控制命令,根据所接收的控制命令,按照刷新间隔和刷新次数向信号生成模块222发送刷新命令生成指令。
此外,主控制模块211进一步用于,接收来自刷新决策模块210的在剩余时间内完成剩余次数刷新的控制命令,根据所接收的控制命令,在剩余时间内,连续向信号生成模块222发送剩余次数的刷新命令生成指令。
其中,连续向信号生成模块222发送剩余次数的刷新命令生成指令可以为主控制模块211按照每次刷新所需要的最小时间间隔向信号生成模块222发送剩余次数的刷新命令生成指令;或者主控制模块211按照每次刷新在剩余时间内的平均时间间隔向信号生成模块222发送剩余次数的刷新命令生成指令。
信号生成模块222,用于根据来自主控制模块221的刷新命令生成指令,生成刷新命令,发送给随机存储器。
实际应用中,可将随机存储器的刷新装置设置在随机存储器的控制器中,如图3所示,图3为应用上述随机存储器刷新装置的随机存储器控制器的结构示意图。图3所示控制器中,将图2所示装置的刷新控制单元220的主控制模块221设置在控制器中的控制器单元301中,将信号生成模块222设置在控制器中的控制信号生成器单元302中,将刷新决策单元210单独设置为一个独立单元,此外,该控制器还包括随机存储器状态寄存器303以及数据锁存器304。
其中,控制器单元301除了具有主控制模块221的功能外,还用于根据中央处理器的访问及随机存储器状态寄存器303中随机存储器的状态,控制控制信号生成器单元302向随机存储器发送读写所需的控制信号,以及控制数据锁存器304对需要写入和需要读出随机寄存器的数据进行锁存,同时与中央处理器进行控制信息的交互等现有操作,此处不再进行详细描述。
图3所示的随机存储器控制器在具体实现时,中央处理器可以预先在刷新决策单元210中配置刷新策略,包括在刷新策略存储模块211中设置访问密集度与刷新间隔、刷新次数的映射关系,以及设置采样时钟周期数;设置时间临界值等,用于提供给刷新策略确定单元212,则刷新策略确定单元212通过在设置的采样时钟周期数内,记录随机存储器被访问的时钟周期数,计算该访问的时钟周期数占用采样时钟周期数的百分比,得到访问密集度;或者通过在采样时钟周期数内,记录随机存储器空闲的时钟周期数,计算该空闲的时钟周期数占用采样时钟周期数的百分比,得到访问密集度。具体采用何种计算方法可根据表一中访问密集度的含义而决定。刷新策略确定单元212根据计算出的访问密集度及预先设置的映射关系,确定刷新间隔和刷新次数,根据所确定的刷新间隔和刷新次数,向控制器单元301发送按照刷新间隔和刷新次数进行刷新的控制命令,直至在刷新要求的规定时间内完成刷新要求的规定次数的刷新时,停止发送;并在下一个规定时间到来之时,重复执行上述功能。
控制器单元301,接收来自刷新决策确定模块212的按照刷新间隔和刷新次数进行刷新的控制命令,根据所接收的控制命令,按照刷新间隔和刷新次数向控制信号生成器单元302发送刷新命令生成指令,控制信号生成器单元302,接收来自控制器单元301的刷新命令生成指令,根据所接收的刷新命令生成指令,生成刷新命令,发送给随机存储器。
进一步地,图3中刷新决策单元210中的刷新策略存储模块211和刷新策略确定模块212也可进一步为刷新策略存储模块211进一步用于存储预先设置的时间临界值,并提供给刷新策略确定模块212。
刷新策略确定模块212进一步用于从刷新策略存储模块211中获取时间临界值,确定在时间临界值内未完成规定次数的刷新时,向刷新控制单元220发送在剩余时间内完成剩余次数刷新的控制命令。
或者,图3中刷新决策单元210中的刷新策略存储模块211和刷新策略确定模块212可进一步为刷新策略存储模块211不用于存储预先设置的时间临界值,而是刷新策略确定模块212进一步用于根据图1所示流程步骤101中所描述的设置时间临界值的第二种方法动态计算时间临界值,确定在时间临界值内未完成规定次数的刷新时,向刷新控制单元220发送在剩余时间内完成剩余次数刷新的控制命令。
则控制器单元301进一步用于,接收来自刷新决策模块210的在剩余时间内完成剩余次数刷新的控制命令,根据所接收的控制命令,在剩余时间内,连续向控制信号生成器单元302发送剩余次数的刷新命令生成指令。
其中,连续向控制信号生成器单元302发送剩余次数的刷新命令生成指令可以为控制器单元301按照每次刷新所需要的最小时间间隔向控制信号生成器单元302发送剩余次数的刷新命令生成指令;或者控制器单元301按照每次刷新在剩余时间内的平均时间间隔向控制信号生成器单元302发送剩余次数的刷新命令生成指令。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种随机存储器的刷新方法,其特征在于,预先设置访问密集度与刷新间隔、刷新次数的映射关系,该方法包括A、计算访问密集度,根据所计算的访问密集度及所述设置的映射关系确定刷新间隔和刷新次数,按照所确定的刷新间隔和刷新次数控制随机存储器进行刷新;B、重复执行步骤A,直至在刷新要求的规定时间内完成刷新要求规定次数的刷新。
2.如权利要求1所述的方法,其特征在于,所述按照所确定的刷新间隔和刷新次数控制随机存储器进行刷新为按照所确定的刷新间隔和刷新次数向随机存储器发送刷新命令。
3.如权利要求1所述的方法,其特征在于,所述访问密集度与刷新间隔、刷新次数的映射关系包括访问密集度的范围区间与刷新间隔、刷新次数的映射关系。
4.如权利要求1所述的方法,其特征在于,设置时间临界值;该方法进一步包括确定在时间临界值内未完成规定次数的刷新时,控制随机存储器在规定时间的剩余时间内完成剩余次数的刷新。
5.如权利要求4所述的方法,其特征在于,所述控制随机存储器在规定时间的剩余时间内完成剩余次数的刷新为按照每次刷新所需要的最小时间间隔向随机存储器发送剩余次数的刷新命令;或者按照每次刷新在剩余时间内的平均时间间隔向随机存储器发送剩余次数的刷新命令。
6.如权利要求4所述的方法,其特征在于,所述时间临界值为预先设置的静态时间临界值。
7.如权利要求6所述的方法,其特征在于,所述静态时间临界值为根据每次刷新所需要的最小时间间隔和刷新要求中的规定次数进行设置。
8.如权利要求4所述的方法,其特征在于,所述时间临界值为动态计算的时间临界值;并且所述动态计算的时间临界值为根据刷新时间和刷新次数的变化,动态计算本次规定时间内的剩余时间和剩余次数所需要的最小剩余时间,如果动态计算的剩余时间大于剩余次数所需要的最小剩余时间,且与最小剩余时间的差值达到预设的门限值时,将该剩余时间临时作为本次规定时间内刷新的时间临界值。
9.如权利要求1至8中任一项所述的方法,其特征在于,所述计算访问密集度具体包括设置采样时钟周期数;记录在该采样时钟周期数内,随机存储器被访问的时钟周期数;计算随机存储器被访问的时钟周期数占用采样时钟周期数的百分比,得到访问密集度;或者,所述根据访问随机存储器的时间计算访问密集度具体包括设置采样时钟周期数;记录在该采样时钟周期数内,随机存储器空闲的时钟周期数;计算随机存储器空闲的时钟周期数占用采样时钟周期数的百分比,得到访问密集度。
10.一种随机存储器的刷新装置,其特征在于,该装置包括刷新决策单元和刷新控制单元,其中,刷新决策单元,用于存储访问密集度与刷新间隔、刷新次数的映射关系;计算访问密集度,根据所计算的访问密集度及所述存储的映射关系确定刷新间隔和刷新次数,向刷新控制单元发送按照刷新间隔和刷新次数进行刷新的控制命令,直至在刷新要求的规定时间内完成刷新要求规定次数的刷新;刷新控制单元,用于接收来自刷新决策单元的按照刷新间隔和刷新次数进行刷新的控制命令,根据所接收的控制命令控制随机存储器进行刷新。
11.如权利要求10所述的装置,其特征在于,所述刷新决策单元包括刷新策略存储模块和刷新策略确定模块,其中,刷新策略存储模块,用于存储访问密集度与刷新间隔、刷新次数的映射关系,并提供给刷新策略确定模块;刷新策略确定模块,用于计算访问密集度,根据所计算的访问密集度及来自刷新策略存储模块的所述映射关系确定刷新间隔和刷新次数,向刷新控制单元发送按照刷新间隔和刷新次数进行刷新的控制命令,直至在刷新要求的规定时间内完成刷新要求规定次数的刷新。
12.如权利要求10或11所述的装置,其特征在于,所述刷新控制单元包括主控制模块和信号生成模块,其中,主控制模块,用于接收来自刷新决策模块的按照刷新间隔和刷新次数进行刷新的控制命令,根据所接收的控制命令,按照刷新间隔和刷新次数向信号生成模块发送刷新命令生成指令;信号生成模块,用于根据来自主控制模块的刷新命令生成指令,生成刷新命令,发送给随机存储器。
13.如权利要求11所述的装置,其特征在于,所述刷新策略存储模块进一步用于存储预先设置的时间临界值,并提供给刷新策略确定模块;所述刷新策略确定模块进一步用于确定在时间临界值内未完成规定次数的刷新时,向刷新控制单元发送在剩余时间内完成剩余次数刷新的控制命令;所述刷新控制单元进一步用于根据所接收的控制命令,控制随机存储器在剩余时间内完成剩余次数的刷新。
14.如权利要求11所述的所述的装置,其特征在于,所述刷新策略确定模块进一步用于根据刷新时间和刷新次数的变化,动态计算本次规定时间内的剩余时间和剩余次数所需要的最小剩余时间,如果动态计算的剩余时间大于剩余次数所需要的最小剩余时间,且与最小剩余时间的差值达到预设的门限值时,向刷新控制单元发送在剩余时间内完成剩余次数刷新的控制命令。
15.如权利要求13或14所述的装置,其特征在于,所述刷新控制单元包括主控制模块和信号生成模块,其中,主控制模块,用于接收来自刷新决策模块的按照刷新间隔和刷新次数进行刷新的控制命令,根据所接收的控制命令,按照刷新间隔和刷新次数向信号生成模块发送刷新命令生成指令;接收来自刷新决策模块的在剩余时间内完成剩余次数刷新的控制命令,根据所接收的控制命令,按照每次刷新所需要的最小时间间隔向信号生成模块发送剩余次数的刷新命令生成指令;或者按照每次刷新在剩余时间内的平均时间间隔向信号生成模块发送剩余次数的刷新命令生成指令;信号生成模块,用于根据来自主控制模块的刷新命令生成指令,生成刷新命令,发送给随机存储器。
16.如权利要求15所述的装置,其特征在于,该装置设置在随机存储器的控制器中,且所述装置中的主控制模块设置在随机存储器控制器中的控制器单元中,所述装置中的信号生成模块设置在随机存储器控制器中的控制信号生成器单元中。
全文摘要
本发明公开了一种随机存储器的刷新方法,预先设置访问密集度与刷新间隔、刷新次数的映射关系,并且包括A.计算访问密集度,根据所计算的访问密集度及所述设置的映射关系确定刷新间隔和刷新次数,按照所确定的刷新间隔和刷新次数控制随机存储器进行刷新;B.重复执行步骤A,直至在刷新要求的规定时间内完成刷新要求规定次数的刷新。此外,本发明还公开了一种随机存储器的刷新装置。本发明所提供的刷新方法及装置,能够提高访问效率和可靠性。
文档编号G11C11/406GK1971759SQ20061016219
公开日2007年5月30日 申请日期2006年12月7日 优先权日2006年12月7日
发明者张怡浩 申请人:北京中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1