一种控制存储器的方法、装置及终端与流程

文档序号:11707530阅读:150来源:国知局
一种控制存储器的方法、装置及终端与流程

本发明涉及电子技术领域,尤其涉及一种控制存储器的方法、装置及终端。



背景技术:

现在的智能终端功能复杂,性能强大,而且一般的智能终端都远不止一个处理器,一般都至少包括多个处理器,比如中央处理器(cpu,centralprocessingunit)、图形处理器(gpu,graphicsprocessingunit)、无线处理器、多媒体处理器以及调制解调处理器等。

尽管一般的终端都有多个处理器,但是一般情况下一个终端都只有一个内存,这些不同的处理器在不同时刻会共用一个内存,不同的处理器通过各自的总线连接到同一个内存上,即通过不同的总线来跟内存传输数据。但是,目前一些厂家的不同处理器在使用内存时,内存的运行频率相对比较固定,在处理器和内存之间公用的一些总线的运行频率也相对比较固定,有时候某些系统的处理器对总线的运行频率和内存的运行频率的需求没有那么高时,会使得整个终端系统的功耗较多,并存在一定浪费。



技术实现要素:

本发明实施例提供一种控制存储器的方法、装置及终端,可根据不同处理器对总线的运行频率的需求,动态地调整总线的运行频率以及内存的运行频率,从而节省系统功耗。

第一方面,本发明实施例提供了一种控制存储器的方法,该方法包括,

实时获取多个处理器分别对应的总线需求频率并确定最大的总线需求频率;

根据预设规则选取所述最大的总线需求频率所对应的内存运行频率;

获取实时总线运行频率并判断所述实时总线运行频率与所述最大的总线需求频率是否相同;

若实时总线运行频率与所述最大的总线需求频率相同,获取实时内存运行频率并判断所述实时内存运行频率与所述内存运行频率是否相同;

若实时内存运行频率与所述内存运行频率不相同,将所述最大的总线需求频率所对应的内存运行频率确定为新的实时内存运行频率。

第二方面,本发明实施例还提供了一种装置,该装置包括,

获取单元,用于实时获取多个处理器分别对应的总线需求频率并确定最大的总线需求频率;

匹配单元,用于根据预设规则选取所述最大的总线需求频率所对应的内存运行频率;

第一判断单元,用于获取实时总线运行频率并判断所述实时总线运行频率与所述最大的总线需求频率是否相同;

第二判断单元,用于若实时总线运行频率与所述最大的总线需求频率相同,获取实时内存运行频率并判断所述实时内存运行频率与所述内存运行频率是否相同;

第一调整单元,用于若实时内存运行频率与所述内存运行频率不相同,将所述最大的总线需求频率所对应的内存运行频率确定为新的实时内存运行频率。

第三方面,本发明实施例还提供了一种终端,该终端包括多个处理器、总线、内存以及如上所述的装置,每个处理器均通过总线与所述内存电性相连,所述装置分别与所述每个处理器、所述总线以及所述内存电性相连,以控制所述总线的实时运行频率以及所述内存的实时运行频率。

本发明实施例能够通过实时统计各个不同处理器对总线的运行频率的需求情况,动态地根据确定的总线的运行频率来调整内存的运行频率,从而可以有效节省系统功耗,提高内存的使用效率。

附图说明

为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种控制存储器的方法的示意流程图;

图2是本发明实施例提供的方法中步骤s101的子示意流程图;

图3是本发明实施例提供的一种装置的示意性框图;

图4是本发明实施例提供的装置终的获取单元101的子示意流程图;

图5是本发明实施例提供的一种终端的示意性框图;

图6是本发明另一实施例提供的一种终端的示意性框图;

图7是本发明另一实施例提供的一种终端的示意性框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

参见图1,其是本发明实施例所提供一种控制存储器的方法的示意流程图,本发明实施例中的存储器可以是双倍速率同步动态随机存储器(ddrsdram,doubledataratesdram),如图所示的方法可包括以下步骤,

步骤s101,实时获取多个处理器分别对应的总线需求频率并确定最大的总线需求频率。

其中,处理器在运行过程中会对总线的运行频率有相对应的需求,只有总线的运行频率达到处理器所需的需求频率时,才能够保证处理器运行的更为顺畅。故此时需要实时地获取多个处理器分别对应的总线需求频率,再根据对比分析确定最大的总线需求频率。

步骤s102,根据预设规则选取所述最大的总线需求频率所对应的内存运行频率。

其中,一般来说,总线的运行频率跟内存的运行频率是相对应的,故可以根据预设规则以及所述的最大的总线需求频率来确定对应的内存需要的运行频率,以使得处理器能够高效运行,并能够使得相关数据的传输和读取更为快速顺畅。

当然,作为优选的,所述步骤s102具体包括,根据预设的总线运行频率与内存运行频率的对应关系选取所述最大的总线需求频率所对应的内存运行频率。根据总线支持的频率等级以及内存的频率等级之间的对应关系,确定预设的总线运行频率与内存运行频率的对应关系。根据预设的总线运行频率与内存运行频率的对应关系,匹配出所述最大的总线需求频率应对应的内存运行频率。

例如,当存储器为双倍速率同步动态随机存储器(ddrsdram,doubledataratesdram)时,本发明实施例中的内存即为ddr内存。故当总线运行频率为400mhz时,对应的ddr内存运行频率为300mhz;当总线运行频率为为300mhz时,对应的ddr内存运行频率为225mhz;当总线运行频率为为200mhz时,对应的ddr内存运行频率为150mhz;当总线运行频率为为100mhz时,对应的ddr内存运行频率为75mhz。

步骤s103,获取实时总线运行频率并判断所述实时总线运行频率与所述最大的总线需求频率是否相同。

其中,为了更为准确地调整总线的运行频率,动态地节省功耗,需要确定实时总线运行频率与各个处理器的总线需求频率中的最大的总线需求频率是否相同。

步骤s104,若实时总线运行频率与所述最大的总线需求频率相同,获取实时内存运行频率并判断所述实时内存运行频率与所述内存运行频率是否相同。

其中,当实时总线运行频率与最大的总线需求频率相同的时候,则为了更为准确地调整内存的运行频率以适应实际需求情况,需要获取实时内存运行频率,同时也要判断所述实时内存运行频率与所述内存运行频率是否相同。

步骤s105,若实时内存运行频率与所述内存运行频率不相同,将所述最大的总线需求频率所对应的内存运行频率确定为新的实时内存运行频率。

其中,若实时内存运行频率与上述的最大的总线需求频率所对应的内存运行频不相同,则表示实时内存运行频率并不能够适应实际的处理器所需要的运行频率。那么此时,则需要将所述最大的总线需求频率所对应的内存运行频率确定为新的实时内存运行频率,从而适应实际需求,以优化总线和内存的功耗。

同样的,例如,若此时的内存为ddr内存,当本发明实施例中多个处理器为中央处理器、图形处理器、调制解调处理器以及无线处理器时,若某个时间这四个处理器运行的频率分别为1ghz、0.5ghz、0.2ghz以及1.5ghz,同时对总线需求频率依次为300mhz、200mhz、100mhz以及400mhz,那么此时这四个处理器中的最大的总线需求频率即为400mhz,同时,根据上述的预设的总线运行频率与ddr内存运行频率的对应关系即可以得出最大的总线需求频率所对应的ddr内存运行频率为300mhz。若当实时总线运行频率也为400mhz,而实时ddr内存运行频率不为300mhz时,则可以将300mhz确定为新的实时ddr内存运行频率,从而可以实现总线和ddr内存的功耗的优化。

作为优选的,本发明实施例所述的方法还可以包括,

步骤s106,若实时总线运行频率与所述最大的总线需求频率不相同,则将所述最大的总线需求频率确定为新的实时总线运行频率,并返回所述获取实时内存运行频率并判断所述实时内存运行频率与所述内存运行频率是否相同的步骤。

同理,例如,若此时的内存为ddr内存,当实时总线运行频率与上述实施例中的四个处理器在某个时间的最大的总线需求频率400mhz不相同时,则需要将400mhz确定为新的实时总线运行频率。接下来要判断实时ddr内存运行频率是否为300mhz,若不是,则将300mhz确定为新的实时ddr内存运行频率。

本发明实施例能够通过实时统计各个不同处理器对总线的运行频率的需求情况,动态地根据确定的总线的运行频率来调整内存的运行频率,从而可以有效节省系统功耗,提高内存的使用效率。

另外,作为优选的,如图2所示,其是本发明实施例提供的方法中步骤s101的子步骤的示意流程图,所述步骤s101具体可以包括以下子步骤,

步骤s101a,实时统计每个处理器的运行频率。其中,每个处理器的运行频率在不同的时间有可能是不相同的,故需要实时统计每个处理器的运行频率。

步骤s101b,根据所述运行频率确定每个处理器对应的总线需求频率。处理器的不同的运行频率对于总线需求频率也是不一样的,根据实际情况可以确定不同的运行频率的处理器对应有相应的总线需求频率。

步骤s101c,根据每个处理器对应的总线需求频率确定最大的总线需求频率。当确定了每个处理器对应的总线需求频率之后,可以根据相应地对比分析确定出最大的总线需求频率。总的来说,可以实时确定某一时间的多个处理器中的最大的总线需求频率。

参见图3,其是本发明实施例所提供的一种装置100的示意框图,本发明实施例中的存储器可以是双倍速率同步动态随机存储器(ddrsdram,doubledataratesdram),如图所示的装置100可以包括,

获取单元101,用于实时获取多个处理器分别对应的总线需求频率并确定最大的总线需求频率。

其中,处理器在运行过程中会对总线的运行频率有相对应的需求,只有总线的运行频率达到处理器所需的需求频率时,才能够保证处理器运行的更为顺畅。故此时需要实时地获取多个处理器分别对应的总线需求频率,再根据对比分析确定最大的总线需求频率。

匹配单元102,用于根据预设规则选取所述最大的总线需求频率所对应的内存运行频率。

其中,一般来说,总线的运行频率跟内存的运行频率是相对应的,故可以根据预设规则以及所述的最大的总线需求频率来确定对应的内存需要的运行频率,以使得处理器能够高效运行,并能够使得相关数据的传输和读取更为快速顺畅。

作为优选的,所述匹配单元102具体用于根据预设的总线运行频率与内存运行频率的对应关系选取所述最大的总线需求频率所对应的内存运行频率。根据总线支持的频率等级以及内存的频率等级之间的对应关系,确定预设的总线运行频率与内存运行频率的对应关系。根据预设的总线运行频率与内存运行频率的对应关系,匹配出所述最大的总线需求频率应对应的内存运行频率。

例如,当存储器为双倍速率同步动态随机存储器(ddrsdram,doubledataratesdram)时,本发明实施例中的内存即为ddr内存。故当总线运行频率为400mhz时,对应的ddr内存运行频率为300mhz;当总线运行频率为为300mhz时,对应的ddr内存运行频率为225mhz;当总线运行频率为为200mhz时,对应的ddr内存运行频率为150mhz;当总线运行频率为为100mhz时,对应的ddr内存运行频率为75mhz。

第一判断单元103,用于获取实时总线运行频率并判断所述实时总线运行频率与所述最大的总线需求频率是否相同。

其中,为了更为准确地调整总线的运行频率,动态地节省功耗,需要确定实时总线运行频率与各个处理器的总线需求频率中的最大的总线需求频率是否相同。

第二判断单元104,用于若实时总线运行频率与所述最大的总线需求频率相同,获取实时内存运行频率并判断所述实时内存运行频率与所述内存运行频率是否相同。

其中,当实时总线运行频率与最大的总线需求频率相同的时候,则为了更为准确地调整内存的运行频率以适应实际需求情况,需要获取实时内存运行频率,同时也要判断所述实时内存运行频率与所述内存运行频率是否相同。

第一调整单元105,用于若实时内存运行频率与所述内存运行频率不相同,将所述最大的总线需求频率所对应的内存运行频率确定为新的实时内存运行频率。

其中,若实时内存运行频率与上述的最大的总线需求频率所对应的内存运行频不相同,则表示实时内存运行频率并不能够适应实际的处理器所需要的运行频率。那么此时,则需要将所述最大的总线需求频率所对应的内存运行频率确定为新的实时内存运行频率,从而适应实际需求,以优化总线和内存的功耗。

同样的,例如,若此时的内存为ddr内存,当本发明实施例中多个处理器为中央处理器、图形处理器、调制解调处理器以及无线处理器时,若某个时间这四个处理器运行的频率分别为1ghz、0.5ghz、0.2ghz以及1.5ghz,同时对总线需求频率依次为300mhz、200mhz、100mhz以及400mhz,那么此时这四个处理器中的最大的总线需求频率即为400mhz,同时,根据上述的预设的总线运行频率与ddr内存运行频率的对应关系即可以得出最大的总线需求频率所对应的ddr内存运行频率为300mhz。若当实时总线运行频率也为400mhz,而实时ddr内存运行频率不为300mhz时,则可以将300mhz确定为新的实时ddr内存运行频率,从而可以实现总线和ddr内存的功耗的优化。

作为优选的,本发明实施例所述的装置还可以包括,

第二调整单元106,用于若实时总线运行频率与所述最大的总线需求频率不相同,则将所述最大的总线需求频率确定为新的实时总线运行频率。

其中,所述第二判断单元104,还用于在所述最大的总线需求频率确定为新的实时总线运行频率的情况下,获取实时内存运行频率并判断所述实时内存运行频率与所述内存运行频率是否相同的动作。

同理,例如,若此时的内存为ddr内存,当实时总线运行频率与上述实施例中的四个处理器在某个时间的最大的总线需求频率400mhz不相同时,则需要将400mhz确定为新的实时总线运行频率。接下来要判断实时ddr内存运行频率是否为300mhz,若不是,则将300mhz确定为新的实时ddr内存运行频率。

本发明实施例能够通过实时统计各个不同处理器对总线的运行频率的需求情况,动态地根据确定的总线的运行频率来调整内存的运行频率,从而可以有效节省系统功耗,提高内存的使用效率。

另外,作为优选的,如图4所示,其是本发明实施例提供的装置100中获取单元101的子单元的示意框图,所述获取单元101具体可以包括以下子单元。

统计单元101a,用于实时统计每个处理器的运行频率。其中,每个处理器的运行频率在不同的时间有可能是不相同的,故需要实时统计每个处理器的运行频率。

第一确定单元101b,用于根据所述运行频率确定每个处理器对应的总线需求频率。处理器的不同的运行频率对于总线需求频率也是不一样的,根据实际情况可以确定不同的运行频率的处理器对应有相应的总线需求频率。

第二确定单元101c,用于根据每个处理器对应的总线需求频率确定最大的总线需求频率。当确定了每个处理器对应的总线需求频率之后,可以根据相应地对比分析确定出最大的总线需求频率。总的来说,可以实时确定某一时间的多个处理器中的最大的总线需求频率。

参见图5,其是本发明实施例所提供的一种终端200的示意框图,如图所示的终端可以包括多个处理器201、总线202、内存203以及上述任一实施例中所述的装置204,每个处理器201均通过总线202与所述内存203电性相连,所述装置204分别与所述每个处理器201、所述总线202以及所述内存203电性相连,以控制所述总线202的实时运行频率以及所述内存203的实时运行频率。

其中,装置204能够实时获取并分析每个处理器的实时运行频率、总线202的实时运行频率以及内存203的实时运行频率,并根据分析结果以及实际需要的情况控制总线202的实时运行频率以及内存203的实时运行频率,以减少总线以及内存的功耗。

参见图6,作为优选的,本实施例所述的终端跟图5所述的终端的区别在于,所述终端还包括一个微处理器201a,所述微处理器201a用于检测所述每个处理器201的实时运行频率,并将所述每个处理器201的实时运行频率发送给所述装置204以得到每个处理器201分别对应的总线需求频率,所述微处理器201a还用于分别检测所述总线202的实时运行频率和内存203的实时运行频率,并将所述总线202的实时运行频率和内存203的实时运行频率发送给所述装置204。其中,设置一个微处理器201a,能够使得监测数据更为精准独立,方便后续的数据处理分析,从而减少功耗。

参见图7,是本发明另一实施例提供的一种终端的示意框图。如图所示的本实施例中的终端可以包括:一个或多个处理器701;一个或多个输入设备702,一个或多个输出设备703和存储器704。上述处理器701、输入设备702、输出设备703和存储器704通过总线705连接。存储器702用于存储指令,处理器701用于执行存储器702存储的指令。其中,处理器701用于实时获取多个处理器分别对应的总线需求频率并确定最大的总线需求频率;根据预设规则选取所述最大的总线需求频率所对应的内存运行频率;获取实时总线运行频率并判断所述实时总线运行频率与所述最大的总线需求频率是否相同;若实时总线运行频率与所述最大的总线需求频率相同,获取实时内存运行频率并判断所述实时内存运行频率与所述内存运行频率是否相同;若实时内存运行频率与所述内存运行频率不相同,将所述最大的总线需求频率所对应的内存运行频率确定为新的实时内存运行频率。

处理器701还用于若实时总线运行频率与所述最大的总线需求频率不相同,则将所述最大的总线需求频率确定为新的实时总线运行频率,并返回获取实时内存运行频率并判断所述实时内存运行频率与所述内存运行频率是否相同的步骤。

作为具体的,处理器701还用于实时统计每个处理器的运行频率;根据所述运行频率确定每个处理器对应的总线需求频率;根据每个处理器对应的总线需求频率确定最大的总线需求频率。

作为更为具体的,处理器701具体还用于根据预设的总线运行频率与内存运行频率的对应关系选取所述最大的总线需求频率所对应的内存运行频率。

应当理解,在本发明实施例中,所称处理器701可以是中央处理单元(centralprocessingunit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

输入设备702可以包括触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备703可以包括显示器(lcd等)、扬声器等。

该存储器704可以包括只读存储器和随机存取存储器,并向处理器701提供指令和数据。存储器704的一部分还可以包括非易失性随机存取存储器。例如,存储器704还可以存储设备类型的信息。

具体实现中,本发明另一实施例中所描述的处理器701、输入设备702、输出设备703可执行本发明实施例提供的控制存储器的方法的实施例和另一实施例中所描述的实现方式,也可执行本发明实施例所描述的终端的实现方式,在此不再赘述。

具体实现中,本发明另一实施例中描述的终端包括但不限于诸如具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的移动电话、膝上型计算机或平板计算机之类的其它便携式设备。还应当理解的是,在某些实施例中,所述设备并非便携式通信设备,而是具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的台式计算机。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的终端和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置、终端和方法,可以通过其它的方式实现。例如,以上所描述的装置和终端实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。

本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。

本发明实施例装置和终端中的单元可以根据实际需要进行合并、划分和删减。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1