CN104239220A - 存储器刷新处理方法和装置 - Google Patents
存储器刷新处理方法和装置 Download PDFInfo
- Publication number
- CN104239220A CN104239220A CN201310232811.XA CN201310232811A CN104239220A CN 104239220 A CN104239220 A CN 104239220A CN 201310232811 A CN201310232811 A CN 201310232811A CN 104239220 A CN104239220 A CN 104239220A
- Authority
- CN
- China
- Prior art keywords
- described target
- storage
- data
- storage area
- territory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Abstract
本发明实施例提供一种存储器刷新处理方法和装置,通过在DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储区域的数据保持时间,选择用于存储所述目标数据的目标存储区域,根据所述目标存储区域的数据保持时间和所述目标数据的关键级别所确定的刷新时间间隔,按照该刷新时间间隔对所述目标存储区域进行刷新,实现了对各个存储区域确定适当的刷新时间间隔,分别进行刷新,以避免不必要的刷新,同时避免了对DRAM的每一存储行设置一个计数器,解决了现有技术中存储器刷新处理成本较高的技术问题。
Description
技术领域
本发明涉及数据存储技术,尤其涉及一种存储器刷新处理方法和装置。
背景技术
动态随机存储器(Dynamic Random Access Memory,简称DRAM)是易失性存储器,常作为系统内存。DRAM由多个二维存储单元阵列构成,二维存储单元阵列中的每个存储单元包括一个晶体管和一个电容。二维存储单元阵列中的每一行称为存储行,每个存储行包括多个存储单元。DRAM利用电容所携带的电荷来存储数据,事实上电容所携带的电荷每过一段时间就会丢失,进而造成存储数据的丢失,从而需要对DRAM的存储行进行周期性刷新操作,以对存储行中的电容进行电荷补充。但对DRAM的全部存储行以固定的周期进行刷新操作,会增加DRAM的能耗,减少使用该DRAM的设备一次充电后的使用时间。
现有技术中,通过对DRAM的每个存储行设置一个计数器,计数器对DRAM的每一行在相邻两次访问之间的时长进行计时,若该时长大于预设的刷新周期,则对该行进行刷新。但由于现有技术中的刷新方法,需要对DRAM的每一行设置一个计数器,存储器刷新处理的成本较高。
发明内容
本发明实施例提供一种存储器刷新处理方法和装置,用于避免对DRAM的每一存储行设置一个计数器,降低存储器刷新处理的成本。
第一个方面是提供一种存储器刷新处理方法,包括:在动态随机存储器DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储区域的数据保持时间,选择用于存储所述目标数据的目标存储区域;所述关键级别用于指示所述目标数据的重要程度,所述存储区域包括至少一个存储行;将所述目标数据存储到所述目标存储区域;根据所述目标存储区域的数据保持时间和所述目标数据的关键级别确定刷新时间间隔,按照所述刷新时间间隔对所述目标存储区域进行刷新。
在第一方面的第一种可能的实现方式中,所述关键级别为高或低;相应地,所述在动态随机存储器DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储区域的数据保持时间,选择用于存储所述目标数据的目标存储区域,包括:若所述目标数据的关键级别为高,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域;若所述目标数据的关键级别为低,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述若所述目标数据的关键级别为高,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域,包括:从所述DRAM的各个存储区域中,获取空闲存储空间不小于所述目标数据的数据量的各个存储区域;在获取的空闲存储空间不小于所述目标数据的数据量的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域。
结合第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述若所述目标数据的关键级别为低,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域,包括:从所述DRAM的各个存储区域中,获取空闲存储空间不小于所述目标数据的数据量的各个存储区域;在获取的空闲存储空间不小于所述目标数据的数据量的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域。
结合第一方面的第一种可能的实现方式、第一方面的第二种可能的实现方式或第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述按照根据所述目标存储区域的数据保持时间和所述目标数据的关键级别所确定的刷新时间间隔,对所述目标存储区域进行刷新,包括:若所述目标数据的关键级别为高,则确定所述目标存储区域的刷新时间间隔小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新;若所述目标数据的关键级别为低,则确定所述目标存储区域的刷新时间间隔不小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新。
结合第一方面、第一方面的第一种可能的实现方式、第一方面的第二种可能的实现方式或第一方面的第三种可能的实现方式,在第一方面的第五种可能的实现方式中,所述存储区域的数据保持时间为所述存储区域所包括的所述至少一个存储行中的最短数据保持时间。
第二个方面是提供一种存储器刷新处理装置,包括:选择模块,用于在动态随机存储器DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储区域的数据保持时间,选择用于存储所述目标数据的目标存储区域;所述关键级别用于指示所述目标数据的重要程度,所述存储区域包括至少一个存储行;存储模块,用于将所述目标数据存储到所述目标存储区域;刷新模块,用于根据所述目标存储区域的数据保持时间和所述目标数据的关键级别确定刷新时间间隔,按照所述刷新时间间隔对所述目标存储区域进行刷新。
在第二方面的第一种可能的实现方式中,所述关键级别为高或低;相应地,所述选择模块,包括:第一选择单元,用于若所述目标数据的关键级别为高,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域;第二选择单元,用于若所述目标数据的关键级别为低,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域。
结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述第一选择单元,具体用于从所述DRAM的各个存储区域中,获取空闲存储空间不小于所述目标数据的数据量的各个存储区域;在获取的空闲存储空间不小于所述目标数据的数据量的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域。
结合第二方面的第一种可能的实现方式,在第二方面的第三种可能的实现方式中,所述第二选择单元,具体用于从所述DRAM的各个存储区域中,获取空闲存储空间不小于所述目标数据的数据量的各个存储区域;在获取的空闲存储空间不小于所述目标数据的数据量的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域。
结合第二方面的第一种可能的实现方式、第二方面的第二种可能的实现方式或第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述刷新模块,包括:第一刷新单元,用于若所述目标数据的关键级别为高,则确定所述目标存储区域的刷新时间间隔小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新;第二刷新单元,用于若所述目标数据的关键级别为低,则确定所述目标存储区域的刷新时间间隔不小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新。
结合第二方面、第二方面的第一种可能的实现方式、第二方面的第二种可能的实现方式或第二方面的第三种可能的实现方式,在第二方面的第五种可能的实现方式中,所述存储区域的数据保持时间为所述存储区域所包括的所述至少一个存储行中的最短数据保持时间。
本发明提供的存储器刷新处理方法和装置,通过在DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储区域的数据保持时间,选择用于存储所述目标数据的目标存储区域,按照根据所述目标存储区域的数据保持时间和所述目标数据的关键级别所确定的刷新时间间隔,对所述目标存储区域进行刷新,实现了对各个存储区域确定适当的刷新时间间隔,分别进行刷新,以避免不必要的刷新,同时避免了对DRAM的每一存储行设置一个计数器,解决了现有技术中存储器刷新处理成本较高的技术问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的存储器刷新处理方法的流程示意图;
图2为本发明另一实施例提供的存储器刷新处理方法的流程示意图;
图3为本发明一实施例提供的存储器刷新处理装置的结构示意图;
图4为本发明另一实施例提供的存储器刷新处理装置的结构示意图;
图5为本发明又一实施例提供的存储器刷新处理装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中的DRAM由多个通道(Channel)构成,每个通道包含多个列(Rank),每个列包含多个块(Bank),每个块包含一个由字线和位线交叉构成的二维存储单元阵列,每个存储单元包括一个晶体管和一个电容。二维存储单元阵列中的每一行为存储行(Memory Row),每个存储行包括多个存储单元。
图1为本发明一实施例提供的存储器刷新处理方法的流程示意图,如图1所示,本实施例可以包括:
101、在DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个存储区域的数据保持时间,选择用于存储目标数据的目标存储区域。
其中,关键级别用于指示所述目标数据的重要程度;存储区域包括至少一个存储行;所述存储区域的数据保持时间为所述存储区域所包括的所述至少一个存储行中的最短数据保持时间。
可选的,若所述目标数据的关键级别为高,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域;若所述目标数据的关键级别为低,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域或者任意选择存储区域作为所述目标存储区域。
或者可选的,在DRAM的各个所述存储区域中,选择目标存储区域,目标存储区域的数据保持时间级别与目标数据的关键级别相同,数据保持时间级别是根据所述目标存储区域的数据保持时间确定的,数据保持时间级别的等级数量不少于关键级别的等级数量。
或者可选的,当需要同时存储不同关键级别的目标数据时,选择目标存储区域的原则为优先为关键级别高的目标数据选择目标存储区域后,再为关键级别低的目标数据选择目标存储区域,关键级别低的目标数据选择目标存储区域可为可存储该目标数据的存储区域中数据保持时间最长的存储区域,或在可存储该目标数据的存储区域中任意选择存储区域,从而增大了目标存储区域的刷新时间间隔。
102、将所述目标数据存储到所述目标存储区域。
103、根据所述目标存储区域的数据保持时间和所述目标数据的关键级别所确定的刷新时间间隔,按照所述刷新时间间隔对所述目标存储区域进行刷新。
可选的,若所述目标数据的关键级别为高,则确定所述目标存储区域的刷新时间间隔小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新;若所述目标数据的关键级别为低,则确定所述目标存储区域的刷新时间间隔不小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新。
需要说明的是,本实施例中对存储区域所包含的至少一个存储行是否连续,是否位于同一个二维存储单元阵列中不做限定。
本实施例中,通过在DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储行的数据保持时间,选择用于存储所述目标数据的目标存储区域,按照根据所述目标存储行的数据保持时间和所述目标数据的关键级别所确定的刷新时间间隔,对所述目标存储行进行刷新,实现了按照适当的刷新时间间隔对各个存储行分别进行刷新,以避免不必要的刷新,从而降低了DRAM的能耗,增加了设备一次充电后的使用时间,同时避免了对DRAM的每一存储行设置一个计数器,降低存储器刷新处理的成本。
图2为本发明另一实施例提供的存储器刷新处理方法的流程示意图,如图2所示,本实施例可以包括:
201、测量DRAM中各个存储行的数据保持时间。
可选的,向所述DRAM中的各个存储行存储测试数据,获取各个存储行存储所述测试数据的起始时刻,检测所述DRAM中的各个所述存储行所存储的测试数据,获取各个所述存储行所存储的测试数据出现错误的时刻,将各个所述存储行所存储的测试数据出现错误的时刻与各个所述存储行存储测试数据的起始时刻之间的时长,作为各个所述存储行的数据保持时间。其中,测试数据可全为0或全为1。
202、将所述各个存储行划分为各个存储区域,确定各个存储区域的数据保持时间。
可选的,在操作系统启动时,将DRAM中的各个存储行的数据保持时间加载到内存控制器中,内存控制器根据DRAM中各个存储行的数据保持时间,利用布隆过滤器将各个存储行划分为存储区域。其中,存储区域包括至少一个DRAM中的存储行。存储区域的数据保持时间可为该存储区域所包括的至少一个存储行中的最短数据保持时间。
203、确定待存储的目标数据的关键级别。
其中,关键级别为高或低,关键级别用于指示所述目标数据的重要程度。
可选的,根据待存储的目标数据的容错率,确定目标数据的关键级别:目标数据的容错率超过指定阈值,则确定目标数据的重要程度为低,进而确定目标数据的关键级别为低;目标数据的容错率低于指定阈值,则确定目标数据的重要程度为高,进而确定目标数据的关键级别为高。
进一步,在确定待存储的目标数据的关键级别之后,还可将目标数据映射到与所述目标数据的关键级别对应的数据页中。其中,数据页包括用于指示所述数据页所对应的关键级别的标识。数据页的标识为0表示该数据页用于映射关键级别为低的目标数据,数据页的标识为1表示该数据页用于映射关键级别为高的目标数据,该数据页的标识占用一个标记位。从而,在一个数据页中的目标数据的关键级别相同。
例如:视频数据包括视频文件指针和视频帧数据,视频帧数据又包括亮度分量和色度分量。由于在视频文件指针、亮度分量和色度分量三种类型的数据中,容错率由低至高依次为:视频文件指针、亮度分量和色度分量,因此,可知,视频文件指针和亮度分量的重要程度较高,其关键级别为高;色度分量的重要程度较低,其关键级别为低。
需要说明的是,由于相比于色度,人眼对亮度更加敏感,因此,用于指示亮度分量的关键级别高于用于指示色度分量的关键级别。
另外需要说明的是,关键级别不仅为高或低,还可进行细分,包括多个级别。
204、从DRAM的各个存储区域中,获取空闲存储空间不小于所述目标数据的数据量的各个存储区域。
可选的,获取DRAM的各个存储区域的空闲存储空间的大小,将所获取的各个存储区域的空闲存储空间的大小与目标数据的数据量的大小相比较,获取空闲存储空间不小于目标数据的数据量的各个存储区域。
205、判断目标数据的关键级别是否为高,若目标数据的关键级别为高,则执行206-207,否则,目标数据的关键级别为低,执行208-209。
206、在获取的空闲存储空间不小于所述目标数据的数据量的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域,将所述目标数据存储到所述目标存储区域。
207、确定所述目标存储区域的刷新时间间隔小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新。
例如:存储区域的数据保持时间一般为64毫秒至256毫秒,若目标存储区域的数据保持时间为256毫秒,则可确定刷新时间间隔为128毫秒。
208、在获取的空闲存储空间不小于所述目标数据的数据量的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域,将所述目标数据存储到所述目标存储区域。
209、确定所述目标存储区域的刷新时间间隔不小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新。
可选的,由于目标数据的关键级别低,因此,容错率较高,可适当增大存储该目标数据的目标存储区域的刷新时间间隔,确定所述目标存储区域的刷新时间间隔不小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新。本实施例不仅考虑了目标数据的关键级别,而且考虑了不同存储区域的数据保持时间不同,在进行存储时,优先将关键级别高的目标数据存储到数据保持时间长的存储区域中,从而保证了存储了关键级别高的目标数据的存储区域可以确定较低的刷新频率,较大的刷新时间间隔;由于关键级别低的目标数据容错率较高,从而存储关键级别低的目标数据的目标存储区域也可以确定较低的刷新频率,因此,延长了刷新时间间隔,降低了DRAM刷新所引起的能耗和性能损失。本实施例所提供的方法可应用于数据密集型应用,例如:数据中心服务器。
例如:存储区域的数据保持时间一般为64毫秒至256毫秒,若目标存储区域的数据保持时间为64毫秒,则可确定刷新时间间隔为128毫秒或256毫秒。
本实施例中,通过在DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储行的数据保持时间,选择用于存储所述目标数据的目标存储区域,按照根据所述目标存储行的数据保持时间和所述目标数据的关键级别所确定的刷新时间间隔,对所述目标存储行进行刷新,实现了对各个存储行分别进行刷新,以避免不必要的刷新,从而降低了DRAM的能耗,同时避免了对DRAM的每一行设置一个计数器,降低存储器刷新处理的成本。另外,由于将关键级别高的目标数据存储在数据保持时间长的目标存储区域中,将关键级别低的目标数据存储在数据保持时间短的目标存储区域中,在实现了增加刷新时间间隔的同时,保证了关键级别高的目标数据的存储可靠性。
图3为本发明一实施例提供的存储器刷新处理装置的结构示意图,如图3所示,包括:选择模块31,存储模块32和刷新模块33。
选择模块31,用于在动态随机存储器DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储区域的数据保持时间,选择用于存储所述目标数据的目标存储区域。
其中,存储区域包括至少一个存储行;所述关键级别用于指示所述目标数据的重要程度;所述存储区域的数据保持时间为所述存储区域所包括的所述至少一个存储行中的最短数据保持时间。
存储模块32,与选择模块31连接,用于将所述目标数据存储到所述目标存储区域。
刷新模块33,与存储模块32连接,用于根据所述目标存储区域的数据保持时间和所述目标数据的关键级别确定刷新时间间隔,按照所述刷新时间间隔对所述目标存储区域进行刷新。
本实施例提供的存储器刷新处理装置的各功能模块可用于执行图1所示存储器刷新处理方法的流程,其具体工作原理不再赘述,详见方法实施例的描述。
本实施例中,通过在DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储行的数据保持时间,选择用于存储所述目标数据的目标存储区域,按照根据所述目标存储行的数据保持时间和所述目标数据的关键级别所确定的刷新时间间隔,对所述目标存储行进行刷新,实现了对各个存储区域确定适当的刷新时间间隔,分别进行刷新,以避免不必要的刷新,从而降低了DRAM的能耗,同时避免了对DRAM的每一行设置一个计数器,降低存储器刷新处理的成本。
图4为本发明另一实施例提供的存储器刷新处理装置的结构示意图,在上一实施例的基础上,本实施例中,关键级别包括高和低,基于此,选择模块31包括:第一选择单元311和第二选择单元312。
第一选择单元311,用于若所述目标数据的关键级别为高,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域。
可选的,第一选择单元311具体用于从所述DRAM的各个存储区域中,获取空闲存储空间不小于所述目标数据的数据量的各个存储区域;在获取的空闲存储空间不小于所述目标数据的数据量的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域。
第二选择单元312,用于若所述目标数据的关键级别为低,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域。
可选的,第二选择单元312具体用于从所述DRAM的各个存储区域中,获取空闲存储空间不小于所述目标数据的数据量的各个存储区域;在获取的空闲存储空间不小于所述目标数据的数据量的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域。
刷新模块33,包括:第一刷新单元331和第二刷新单元332。
第一刷新单元331,用于若所述目标数据的关键级别为高,则确定所述目标存储区域的刷新时间间隔小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新。
第二刷新单元332,用于若所述目标数据的关键级别为低,则确定所述目标存储区域的刷新时间间隔不小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新。
本实施例中的存储器刷新处理装置可为DRAM控制器,可用于手机、个人数字助理、个人电脑、家庭网关、无线调制解调器、机顶盒、数据卡或无线路由器。
本实施例提供的存储器刷新处理装置的各功能模块可用于执行图2所示存储器刷新处理方法的流程,其具体工作原理不再赘述,详见方法实施例的描述。
本实施例中的存储器刷新处理装置,通过在DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储行的数据保持时间,选择用于存储所述目标数据的目标存储区域,按照根据所述目标存储行的数据保持时间和所述目标数据的关键级别所确定的刷新时间间隔,对所述目标存储行进行刷新,实现了对各个存储行确定适当的刷新时间间隔分别进行刷新,以避免不必要的刷新,从而降低了DRAM的能耗,同时避免了对DRAM的每一行设置一个计数器,降低存储器刷新处理的成本。另外,由于将关键级别高的目标数据存储在数据保持时间长的目标存储区域中,将关键级别低的目标数据存储在数据保持时间短的目标存储区域中,在实现了增加刷新时间间隔的同时,保证了关键级别高的目标数据的存储可靠性。
图5为本发明又一实施例提供的存储器刷新处理装置的结构示意图,如图5所示,本实施例的存储器刷新处理装置包括:通信接口51、处理器52和存储器53。
存储器53,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器53可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
处理器52,用于执行存储器53存放的程序,以用于:在动态随机存储器DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储区域的数据保持时间,选择用于存储所述目标数据的目标存储区域;将所述目标数据存储到所述目标存储区域;根据所述目标存储区域的数据保持时间和所述目标数据的关键级别确定刷新时间间隔,按照所述刷新时间间隔对所述目标存储区域进行刷新。
其中,所述关键级别用于指示所述目标数据的重要程度,所述存储区域包括至少一个存储行,所述存储区域的数据保持时间为所述存储区域所包括的所述至少一个存储行中的最短数据保持时间。
可选的,关键级别为高或低,基于此,处理器52具体用于若所述目标数据的关键级别为高,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域,若所述目标数据的关键级别为低,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域。若所述目标数据的关键级别为高,则确定所述目标存储区域的刷新时间间隔小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新;若所述目标数据的关键级别为低,则确定所述目标存储区域的刷新时间间隔不小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新。
通信接口51,用于接收待存储的目标数据。
本实施例提供的存储器刷新处理装置的各功能模块可用于执行图2所示存储器刷新处理方法的流程,其具体工作原理不再赘述,详见方法实施例的描述。
本实施例中,通过存储器刷新处理装置在DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储行的数据保持时间,选择用于存储所述目标数据的目标存储区域,按照根据所述目标存储行的数据保持时间和所述目标数据的关键级别所确定的刷新时间间隔,对所述目标存储行进行刷新,实现了按照适当的刷新时间间隔对各个存储行分别进行刷新,以避免不必要的刷新,从而降低了DRAM的能耗,增加了设备一次充电后的使用时间,同时避免了对DRAM的每一存储行设置一个计数器,降低存储器刷新处理的成本。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (12)
1.一种存储器刷新处理方法,其特征在于,包括
在动态随机存储器DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储区域的数据保持时间,选择用于存储所述目标数据的目标存储区域;所述关键级别用于指示所述目标数据的重要程度,所述存储区域包括至少一个存储行;
将所述目标数据存储到所述目标存储区域;
根据所述目标存储区域的数据保持时间和所述目标数据的关键级别确定刷新时间间隔,按照所述刷新时间间隔对所述目标存储区域进行刷新。
2.根据权利要求1所述的存储器刷新处理方法,其特征在于,所述关键级别为高或低;
相应地,所述在动态随机存储器DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储区域的数据保持时间,选择用于存储所述目标数据的目标存储区域,包括:
若所述目标数据的关键级别为高,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域;
若所述目标数据的关键级别为低,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域。
3.根据权利要求2所述的存储器刷新处理方法,其特征在于,所述若所述目标数据的关键级别为高,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域,包括:
从所述DRAM的各个存储区域中,获取空闲存储空间不小于所述目标数据的数据量的各个存储区域;
在获取的空闲存储空间不小于所述目标数据的数据量的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域。
4.根据权利要求2所述的存储器刷新处理方法,其特征在于,所述若所述目标数据的关键级别为低,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域,包括:
从所述DRAM的各个存储区域中,获取空闲存储空间不小于所述目标数据的数据量的各个存储区域;
在获取的空闲存储空间不小于所述目标数据的数据量的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域。
5.根据权利要求2-4任一项所述的存储器刷新处理方法,其特征在于,所述按照根据所述目标存储区域的数据保持时间和所述目标数据的关键级别所确定的刷新时间间隔,对所述目标存储区域进行刷新,包括:
若所述目标数据的关键级别为高,则确定所述目标存储区域的刷新时间间隔小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新;
若所述目标数据的关键级别为低,则确定所述目标存储区域的刷新时间间隔不小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新。
6.根据权利要求1-4任一项所述的存储器刷新处理方法,其特征在于,所述存储区域的数据保持时间为所述存储区域所包括的所述至少一个存储行中的最短数据保持时间。
7.一种存储器刷新处理装置,其特征在于,包括
选择模块,用于在动态随机存储器DRAM的各个存储区域中,根据待存储的目标数据的关键级别和各个所述存储区域的数据保持时间,选择用于存储所述目标数据的目标存储区域;所述关键级别用于指示所述目标数据的重要程度,所述存储区域包括至少一个存储行;
存储模块,用于将所述目标数据存储到所述目标存储区域;
刷新模块,用于根据所述目标存储区域的数据保持时间和所述目标数据的关键级别确定刷新时间间隔,按照所述刷新时间间隔对所述目标存储区域进行刷新。
8.根据权利要求7所述的存储器刷新处理装置,其特征在于,所述关键级别为高或低;
相应地,所述选择模块,包括:
第一选择单元,用于若所述目标数据的关键级别为高,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域;
第二选择单元,用于若所述目标数据的关键级别为低,则在所述DRAM中的能够存储所述目标数据的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域。
9.根据权利要求8所述的存储器刷新处理装置,其特征在于,
所述第一选择单元,具体用于从所述DRAM的各个存储区域中,获取空闲存储空间不小于所述目标数据的数据量的各个存储区域;在获取的空闲存储空间不小于所述目标数据的数据量的各个存储区域中,选择数据保持时间最长的存储区域作为所述目标存储区域。
10.根据权利要求8所述的存储器刷新处理装置,其特征在于,
所述第二选择单元,具体用于从所述DRAM的各个存储区域中,获取空闲存储空间不小于所述目标数据的数据量的各个存储区域;在获取的空闲存储空间不小于所述目标数据的数据量的各个存储区域中,选择数据保持时间最短的存储区域作为所述目标存储区域。
11.根据权利要求8-10任一项所述的存储器刷新处理装置,其特征在于,所述刷新模块,包括:
第一刷新单元,用于若所述目标数据的关键级别为高,则确定所述目标存储区域的刷新时间间隔小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新;
第二刷新单元,用于若所述目标数据的关键级别为低,则确定所述目标存储区域的刷新时间间隔不小于所述目标存储区域的数据保持时间,按照确定的所述刷新时间间隔,对所述目标存储区域进行刷新。
12.根据权利要求7-10任一项所述的存储器刷新处理装置,其特征在于,所述存储区域的数据保持时间为所述存储区域所包括的所述至少一个存储行中的最短数据保持时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310232811.XA CN104239220B (zh) | 2013-06-13 | 2013-06-13 | 存储器刷新处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310232811.XA CN104239220B (zh) | 2013-06-13 | 2013-06-13 | 存储器刷新处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104239220A true CN104239220A (zh) | 2014-12-24 |
CN104239220B CN104239220B (zh) | 2017-11-24 |
Family
ID=52227336
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310232811.XA Active CN104239220B (zh) | 2013-06-13 | 2013-06-13 | 存储器刷新处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104239220B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105045722A (zh) * | 2015-08-26 | 2015-11-11 | 东南大学 | 一种ddr2-sdram控制器及其低延迟优化方法 |
WO2016176807A1 (zh) * | 2015-05-04 | 2016-11-10 | 华为技术有限公司 | 一种dram刷新方法、装置和系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1234901A (zh) * | 1997-06-12 | 1999-11-10 | 松下电器产业株式会社 | 半导体电路及其控制方法 |
CN1877737A (zh) * | 2005-06-01 | 2006-12-13 | 尔必达存储器株式会社 | 半导体器件 |
CN101809670A (zh) * | 2007-10-05 | 2010-08-18 | 富士通株式会社 | 信息处理装置、存储部控制装置、存储部控制方法 |
CN101980339A (zh) * | 2010-11-04 | 2011-02-23 | 浙江大学 | 一种用于dram缓存的纠错编码方法 |
EP2320424A1 (en) * | 2004-04-29 | 2011-05-11 | SanDisk IL Ltd | Refreshing data stored in a flash memory |
JP2011154761A (ja) * | 2010-01-27 | 2011-08-11 | Elpida Memory Inc | 半導体装置及びその制御方法 |
-
2013
- 2013-06-13 CN CN201310232811.XA patent/CN104239220B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1234901A (zh) * | 1997-06-12 | 1999-11-10 | 松下电器产业株式会社 | 半导体电路及其控制方法 |
EP2320424A1 (en) * | 2004-04-29 | 2011-05-11 | SanDisk IL Ltd | Refreshing data stored in a flash memory |
CN1877737A (zh) * | 2005-06-01 | 2006-12-13 | 尔必达存储器株式会社 | 半导体器件 |
CN101809670A (zh) * | 2007-10-05 | 2010-08-18 | 富士通株式会社 | 信息处理装置、存储部控制装置、存储部控制方法 |
JP2011154761A (ja) * | 2010-01-27 | 2011-08-11 | Elpida Memory Inc | 半導体装置及びその制御方法 |
CN101980339A (zh) * | 2010-11-04 | 2011-02-23 | 浙江大学 | 一种用于dram缓存的纠错编码方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016176807A1 (zh) * | 2015-05-04 | 2016-11-10 | 华为技术有限公司 | 一种dram刷新方法、装置和系统 |
US10586608B2 (en) | 2015-05-04 | 2020-03-10 | Huawei Technologies Co., Ltd. | DRAM refresh method, apparatus, and system |
CN105045722A (zh) * | 2015-08-26 | 2015-11-11 | 东南大学 | 一种ddr2-sdram控制器及其低延迟优化方法 |
CN105045722B (zh) * | 2015-08-26 | 2018-06-05 | 东南大学 | 一种ddr2-sdram控制器及其低延迟优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104239220B (zh) | 2017-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9142279B2 (en) | DRAM refresh method and system | |
CN104488031B (zh) | 响应于数据访问执行存储装置的刷新 | |
US8606991B2 (en) | Method and system for refreshing dynamic random access memory | |
US9336855B2 (en) | Methods and systems for smart refresh of dynamic random access memory | |
US20110072195A1 (en) | Method for managing a memory device having multiple channels and multiple ways, and associated memory device and controller thereof | |
CN105122218A (zh) | 包含训练、数据组织及/或遮蔽的存储器系统及方法 | |
CN103942159A (zh) | 一种基于混合存储设备的数据读写方法与装置 | |
CN103310842A (zh) | 烧录系统及烧录方法 | |
CN108874688A (zh) | 一种报文数据缓存方法及装置 | |
CN101751993A (zh) | 缓存控制设备和方法 | |
CN107430885A (zh) | 用于刷新储存元件的系统和方法 | |
CN102096562A (zh) | 数据写入方法及装置 | |
CN105138472B (zh) | 闪存磨损优化方法及设备 | |
CN107704200A (zh) | 一种数据存放方法 | |
CN104239220A (zh) | 存储器刷新处理方法和装置 | |
KR102388746B1 (ko) | 세이프 어드레스 매핑을 이용한 메모리 셀 액세스 제어 방법 | |
CN102147771B (zh) | 查找闪存设备中固件程序存放位置的方法 | |
CN103761194A (zh) | 一种内存管理方法及装置 | |
CN110515860A (zh) | 一种内存中存储数据的地址标识方法、系统及装置 | |
CN102981965A (zh) | 一种nand flash文件系统 | |
CN104572655B (zh) | 数据处理的方法、装置及系统 | |
CN103207838B (zh) | 提高芯片性能的方法 | |
CN105138294B (zh) | 一种硬盘设备及信息处理方法 | |
CN107577428A (zh) | 一种数据存储方法及装置 | |
TWI752784B (zh) | 非對稱型平面管理方法以及資料儲存裝置及其控制器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |