CN107924225B - 用于动态地调整存储器状态转变定时器的系统和方法 - Google Patents

用于动态地调整存储器状态转变定时器的系统和方法 Download PDF

Info

Publication number
CN107924225B
CN107924225B CN201680050888.7A CN201680050888A CN107924225B CN 107924225 B CN107924225 B CN 107924225B CN 201680050888 A CN201680050888 A CN 201680050888A CN 107924225 B CN107924225 B CN 107924225B
Authority
CN
China
Prior art keywords
memory
state transition
power state
optimal value
transition timer
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.)
Active
Application number
CN201680050888.7A
Other languages
English (en)
Other versions
CN107924225A (zh
Inventor
H·J·朴
H-J·罗
K·罗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN107924225A publication Critical patent/CN107924225A/zh
Application granted granted Critical
Publication of CN107924225B publication Critical patent/CN107924225B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

公开了用于动态地调整存储器功率状态转变定时器的系统、方法和计算机程序。方法的一个实施例包括:接收一个或多个参数,该一个或多个参数影响耦合到计算设备中的处理器的存储器设备的使用或性能。确定一个或多个存储器功率状态转变定时器设置的最优值。将所述存储器功率状态转变定时器设置的当前值更新为最优值。

Description

用于动态地调整存储器状态转变定时器的系统和方法
技术领域
便携式计算设备(例如,蜂窝电话、智能电话、平板型计算机、便携式数字助理(PDA)、便携式游戏控制台、可穿戴设备和其它电池供电设备)和其它计算设备持续提供一批不断扩展的特征和服务,并且向用户提供对信息、资源和通信的前所未有的水平的接入。为了跟上这些服务增强,这些设备变得更强大且更复杂。现在,便携式计算设备通常包括片上系统(SoC),SoC包括嵌入在单个基底上的一个或多个芯片组件(例如,一个或多个中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器等)。SoC可以经由双数据速率(DDR)高性能数据和控制接口耦合到一个或多个易失性存储器模块或设备,诸如随机存取存储器(DRAM)。
现有世代和未来世代的DDR存储器(例如,DDR1、DDR2、DDR3、DDR4等)支持两个或更多个存储器功率状态,以使设备能够根据期望的功率和/或性能模式来操作。存储器功率状态中的至少一个存储器功率状态可以包括相对较低的功率模式,以使设备能够节省功率。为了控制存储器功率状态之间的转变,DDR存储器设备具有时钟定时器设置(例如,掉电定时器、页面关闭定时器、自刷新定时器),其可以影响进入较低功率模式所要求的空闲持续时间。在现有的设计中,例如,SoC和系统制造商可以基于实验室模拟和测试结果来对空闲定时器的静态值进行编程。静态空闲定时器值可以被确定为提供针对总体关键使用情况的功率和性能。在操作中,使用预定的静态空闲定时器值,而不考虑各种使用情况变化、DDR类型和型号、功率对比性能优先级的改变等。
然而,当进入较低功率存储器状态时,将预定的静态设置用于控制定时器可能因动态地改变因子而产生不是最优的功率和/或性能。例如,最优的空闲定时器值可以根据DDR类型、型号和世代以及变化的可操作因子(诸如存储器业务模式、存储器操作频率、存储器业务量和功率对比性能优先级)来改变。
因此,需要针对用于动态地调整存储器功率状态转变定时器的改进的系统和方法。
发明内容
公开了用于动态地调整存储器功率状态转变定时器的系统、方法和计算机程序。方法的一个实施例包括:接收一个或多个参数,所述一个或多个参数影响耦合到计算设备中的处理器的存储器设备的使用或性能。确定一个或多个存储器功率状态转变定时器设置的最优值。将所述存储器功率状态转变定时器设置的当前值更新为所述最优值。
另一个实施例是计算机系统。所述计算机系统包括存储器设备和片上系统(SoC)。所述SoC包括处理器和存储器控制器。所述存储器控制器电气地耦合到所述存储器设备。所述处理器执行存储器调度器,所述存储器调度器被配置为:确定被存储器控制器用来进入低功率存储器状态的一个或多个存储器功率状态转变定时器设置的最优值。
附图说明
在附图中,除非另外指示,否则遍及各个视图,相似的附图标记指代相似的部分。对于具有诸如“102A”或“102B”的字母字符标记的附图标记,字母字符标记可以区分出现在同一附图中的两个相似的部分或元素。当旨在使附图标记涵盖在所有附图中具有相同附图标记的所有部分时,可以省略附图标记的字母字符标记。
图1是用于动态地调整存储器功率状态转变定时器的系统的实施例的框图。
图2是示出了在用于动态地调整存储器功率状态转变定时器的图1的系统中实现的方法的实施例的流程图。
图3是示出了图1的存储器功率状态转变管理器的实施例的数据输入和输出的框图。
图4是示出了空闲定时器的示例性实施例的定时图,所述空闲定时器可以被动态地调整为优化动态随机存取存储器(DRAM)设备的较低功率状态中的功耗。
图5是示出了用于基于存储器利用百分比和存储器工作频率来确定最优的掉电定时器和页面关闭定时器设置的查找表的实施例的框图。
图6是示出了用于确定最优的空闲定时器设置的迭代搜索方法的实施例的图。
图7是示出了用于基于使用情况类型来确定最优的掉电定时器和页面关闭定时器设置的查找表的另一个实施例的框图。
图8是用于并入图1的系统的便携式通信设备的实施例的框图。
具体实施方式
本文使用的词语“示例性”意味着“作为示例、实例或说明”。本文中描述为“示例性”的任何方面不必被解释为优选于其它方面或者比其它方面有优势。
在本描述中,术语“应用”还可以包括具有可执行内容(诸如:对象代码、脚本、字节代码、标记语言文件以及补丁)的文件。另外,本文中所引用的“应用”还可以包括本质上不可执行的文件(诸如可能需要被打开的文档或需要被访问的其它数据文件)。
术语“内容”还可以包括具有可执行内容(诸如:对象代码、脚本、字节代码、标记语言文件以及补丁)的文件。另外,本文中所引用的“内容”还可以包括本质上不可执行的文件(诸如可能需要被打开的文档或需要被访问的其它数据文件)。
如在本描述中使用的,术语“组件”、“数据库”、“模块”、“系统”等等旨在指代计算机相关的实体,要么是硬件、固件、硬件和软件的组合、软件,要么是执行中的软件。例如,组件可以是,但不限于是:在处理器上运行的过程、处理器、对象、可执行文件、执行的线程、程序和/或计算机。通过说明的方式,在计算设备运行上的应用和计算设备两者可以是组件。一个或多个组件可以存在于过程和/或执行的线程中,并且组件可以位于一个计算机中和/或分布在两个或更多计算机之间。此外,这些组件可以从具有存储在其上的各种数据结构的各种计算机可读介质中执行。组件可以诸如根据具有一个或多个数据分组(例如,来自与本地系统、分布式系统中的另一个组件进行交互,和/或跨越诸如互联网的网络通过信号的方式与其它系统进行交互的一个组件的数据)的信号通过本地和/或远程过程进行通信。
在本描述中,术语“通信设备”、“无线设备”、“无线电话”、“无线通信设备”和“无线手机”可互换地使用。随着第三代(“3G”)无线技术和第四代(“4G”)的到来,更大的带宽可用性实现了具有更加多样的无线能力的更便携的计算设备。因此,便携式计算设备可以包括蜂窝电话、寻呼机、PDA、智能电话、导航设备、或者具有无线连接或链路的手持计算机。
图1示出了系统100,其包括电气地耦合到一个或多个存储器设备104的片上系统(SoC)102。SoC 102包括经由SoC总线114互连的各种片上组件。在图1的实施例中,SoC 102包括从存储器设备104请求存储器资源的一个或多个存储器客户端。存储器客户端可以包括一个或多个处理单元(例如,中央处理单元(CPU)106、图形处理单元(GPU)、数字信号处理器(DSP)等)、视频编码器、或请求对存储器设备104的读取/写入存取的其它客户端。SoC102还可以包括片上存储器,诸如静态随机存取存储器(SRAM)110和只读存储器(ROM)112。
应当认识到的是,系统100可以实现在任何计算设备中,包括个人计算机、工作站、服务器、便携式计算设备(PCD)(诸如蜂窝电话、智能电话、便携式数字助理(PDA)、便携式游戏控制台、导航设备、平板型计算机、可穿戴设备(诸如运动手表、健身跟踪设备等)或其它电池供电的、具有网页功能的设备)。
SoC 102上的存储器控制器108经由总线124电气地耦合到存储器设备104。存储器控制器108管理去往和来自存储器设备104的数据的流动。存储器控制器108通常包括用于从存储器设备104读取和向存储器设备104写入的逻辑单元。在一个实施例中,存储器设备104包括动态随机存取存储器(DRAM)设备,以及总线124包括高性能随机存取存储器(RAM)总线。存储器控制器108和DRAM设备可以支持现有世代或未来世代的双数据速率(DDR)接口(例如,DDR1、DDR2、DDR3、DDR4等)。
存储器设备104和存储器控制器108可以被配置为支持两个或更多个存储器功率状态或模式。每个存储器功率状态或模式可以由存储器控制器108选择性地进行控制,以提供存储器功耗和/或存储器性能的不同组合。存储器功率状态中的至少一个存储器功率状态包括用于节省存储器功耗的相对较低的功率存储器状态。如在图1中进一步示出的,CPU106执行的操作系统(O/S 116)可以包括存储器管理器118。存储器管理器118通常包括用于向存储器客户端分配存储器设备104中的存储器的逻辑单元。存储器管理器118可以包括调度器组件120,其用于调度针对存储器设备104的存储器读取/写入操作。存储器管理器118还可以包括存储器功率状态转变定时器优化组件122,其通常包括用于动态地调整被存储器设备104用来从一个存储器功率状态转变到另一个功率状态的一个或多个定时器设置的逻辑单元。在一个实施例中,存储器功率状态转变定时器优化组件122被配置为确定用于进入较低功率存储器状态的一个或多个定时器设置的最优的功率节省值。存储器功率状态转变定时器优化组件122可以实现在O/S116(如图1所示)或硬件或固件中。
图2示出了在用于动态地调整存储器功率状态转变定时器以产生低功率存储器状态下的功率节省的系统100中实现的方法200的实施例。在框202处,存储器功率状态转变定时器优化组件122可以接收影响存储器设备104的使用或性能的一个或多个参数。应当认识到的是,所接收的参数可以是经由操作系统116、存储器管理器118和/或调度器120来监测的。此外,所接收的参数可以根据例如存储器设备或系统100中的其它组件的类型来改变。在一个实施例中,所接收的参数可以包括与以下各项中的一项或多项相关的信息:存储器业务模式、存储器工作频率、存储器业务量、存储器利用百分比、功率和/或性能优先级、系统使用情况和执行的应用的类型。所接收的参数还可以识别存储器设备104的类型、型号和或供应商。
在框204处,存储器功率状态转变定时器优化组件122可以基于一个或多个接收的参数来确定是否要更新一个或多个存储器功率状态转变定时器设置的当前值。存储器功率状态转变定时器优化组件122可以监测并检测所接收的参数的变化,以确定存储器功率状态转变定时器的当前值针对低功率存储器状态中的功率节省是否不是最优的。应当认识到的是,存储器功率状态转变定时器可以根据存储器设备104的类型、世代、型号等来改变。例如,在其中存储器设备104包括DRAM的实施例中,定时器可以包括DDR空闲定时器,诸如举例来说,掉电定时器、页面关闭定时器或自刷新定时器。
无论存储器功率状态转变定时器的类型如何,如果当前值不再是最优地功率节省,则可以基于所接收的参数来确定新值。新值可以是经由例如查找表或其它优化逻辑单元来计算或确定的。在框206处,存储器功率状态转变定时器优化组件122可以基于所接收的参数中的一个或多个参数来将存储器功率状态转变定时器的值更新为最优值。可以将最优值提供给并且存储在存储器控制器108中,以在进入低功率存储器状态时使用(框208)。
图3是示出了存储器功率状态转变定时器优化组件122的实施例的示例性数据输入和输出的框图。在该实施例中,存储器功率状态转变定时器优化组件122被配置为确定被DRAM设备用来进入低功率存储器状态的DDR空闲定时器设置312的最优值。DRAM控制器304可以将DDR空闲定时器设置312的当前值存储在一个或多个寄存器310中。在系统操作期间,存储器功率状态转变定时器优化组件122可以监测和/或接收各种数据输入302,如在箭头306处示出的。数据输入302可以包括与存储器使用相关的各种信息,诸如举例来说,存储器业务模式、存储器工作频率、存储器业务量或利用百分比、以及存储器设备类型、供应商或型号。数据输入302还可以包括与以下各项相关的信息:存储器功率和/或性能优先级或模式、执行的应用、剩余的电池寿命、或者可以影响DDR空闲定时器设置的最优值的任何其它状况或参数。
图4是示出了可以被存储器功率状态转变定时器优化组件122动态地调整的各种示例性DDR空闲定时器的操作的定时图400。定时图400示出了掉电空闲定时器402、页面关闭空闲定时器404和自刷新空闲定时器406的操作。空闲定时器402、404和406的持续时间可以是由寄存器310中存储的相应的空闲定时器设置312来控制的。在图4的示例中,掉电空闲定时器402具有64个DDR时钟周期的当前值。页面关闭空闲定时器404具有128个DDR时钟周期的当前值。自刷新空闲定时器404具有晶体振荡器的50个周期的当前值。再次参照图3,存储器功率状态转变定时器优化组件122可以基于数据输入302来确定定时器402、404和406的最优值。
应当认识到的是,可以以各种方式来确定最优值。在一个实施例中,存储器功率状态转变定时器优化组件122访问查找表来确定与数据输入302中的一个或多个数据输入相对应的空闲定时器设置(即,数据输出)。图5是示出了用于基于存储器利用百分比和存储器工作频率来确定最优的掉电定时器和页面关闭定时器设置的查找表500。列502示出了存储器利用百分比506和DDR频率508的组合的值。对于列502中的输入值的每个组合,表500在列504中列出了相应的输出值。在列510中标识了掉电定时器的相应的输出值,以及在列512中标识了页面关闭定时器的相应的输出值。例如,参照表500中的最上面一行,如果存储器利用百分比小于30%并且DDR频率是200MHz,则查找表500确定应当将掉电定时器和页面关闭定时器的值分别更新为4个DDR周期和64个DDR周期。应当认识到的是,输入502和输出504可以是基于模拟的数据并且作为默认值被编程到寄存器310中。
图7示出了用于基于使用情况类型来确定最优的掉电定时器和页面关闭定时器设置的查找表700的另一个实施例。在列706中列出的使用情况类型定义表输入。对于每种使用情况类型,表700在列704中列出了相应的输出值。在列708中标识了掉电定时器的相应的输出值,以及在列710中标识了页面关闭定时器的相应的输出值。在图7的示例中,使用情况类型可以包括以下各项中的一项或多项:使用宽带码分多址(WCDMA)或全球移动通信系统(GSM)的语音呼叫;基于长期演进(LTE)的语音呼叫;LTE数据下载;图形基准应用;DDR基准应用;或任何其它使用情况。应当认识到的是,输入702和输出704也可以是基于模拟的数据并且作为默认值被编程到寄存器310中。在其它实施例中,存储器功率状态转变定时器优化组件122可以被配置为基于平均空闲定时器持续时间来计算DDR空闲定时器设置的最优值。
图6是示出了用于使用迭代搜索方法来确定最优的空闲定时器设置的的另一个实施例的图600。x轴表示页面关闭定时器的值,y轴表示掉电定时器的值。在系统100的操作期间,搜索算法可以迭代地搜索产生较低的平均存储器功率的最优x和y值。在图6的示例中,搜索方法可以以X0处的初始值组合开始。搜索算法可以估计针对相邻值组合的功率和/或性能。如图6所示,可以搜索具有针对掉电定时器和页面关闭定时器两者的更大值和更小值的相邻值,以确定相邻值是否产生更优的功率和/或性能。搜索方法可以被配置为迭代地识别后续的值组合X1、X2、X3等,直到确定了产生最低的可能的平均存储器功率的最优值组合。
如上文提及的,系统100可以被并入到任何期望的计算系统中。图8示出了被并入到示例性便携式计算设备(PCD)800中的系统100。将易于认识到的是,系统100的某些组件被包括在SoC 322上,而其它组件(例如,DRAM 104)是耦合到SoC 322的外部组件。SoC 322可以包括多内核CPU 802。多内核CPU 802可以包括第零内核810、第一内核812以及第N内核814。这些内核中的一个内核包括例如图形处理单元(GPU),而其它内核中的一个或多个内核包括CPU。
显示器控制器328和触摸屏控制器330可以耦合到多内核CPU 802。继而,在片上系统322外部的触摸屏显示器806可以耦合到显示器控制器328和触摸屏控制器330。
图8还示出了视频编码器334(例如,逐行倒相制式(PAL)编码器、顺序存储彩色制式(SECAM)编码器、或国家电视系统委员会(NTSC)编码器)耦合到多内核CPU 802。此外,视频放大器336耦合到视频编码器334和触摸屏显示器806。此外,视频端口338耦合到视频放大器336。如图8所示,通用串行总线(USB)控制器340耦合到多内核CPU 802。此外,USB端口342耦合到USB控制器340。存储器104可以耦合到SoC 322(如图1所示)。
此外,如图8所示,数字相机348可以耦合到多内核CPU 802。在示例性方面中,数字相机348是电荷耦合器件(CCD)相机或互补金属氧化物半导体(CMOS)相机。
如图8进一步所示的,立体声音频编解码器(CODEC)350可以耦合到多内核CPU802。此外,音频放大器352可以耦合到立体声音频CODEC 350。在示例性方面中,第一立体声扬声器354和第二立体声扬声器356耦合到音频放大器352。图8示出麦克风放大器358也可以耦合到立体声音频CODEC 350。此外,麦克风360可以耦合到麦克风放大器358。在特定方面中,调频(FM)无线电调谐器362可以耦合到立体声音频CODEC 350。此外,FM天线364耦合到FM无线电调谐器362。此外,立体声耳机366可以耦合到立体声音频CODEC 350。
图8还示出了可以耦合到多内核CPU 802的射频(RF)收发机368。RF开关370可以耦合到RF收发机368和RF天线372。小键盘204可以耦合到多内核CPU 802。此外,具有麦克风的单声道耳麦376可以耦合到多内核CPU 802。此外,振动器设备378可以耦合到多内核CPU308。
图8还示出电源380可以耦合到片上系统322。在特定方面中,电源380是向PCD 800的需要电力的各个组件提供电力的直流(DC)电源。此外,在特定方面中,电源是可再充电DC电池或者从连接到交流(AC)电源的AC到DC变压器得到的DC电源。
图8还指示PCD 800还可以包括网卡388,其可以用于接入数据网络,例如,局域网、个域网或任何其它网络。网卡388可以是蓝牙网卡、WiFi网卡、个域网(PAN)卡、个域网超低功率技术(PeANUT)网卡、电视机/电缆/卫星调谐器、或本领域公知的任何其它网卡。此外,网卡388可以集成在芯片中,即,网卡388可以是芯片中的完全解决方案,并且可以不是单独的网卡388。
如在图8中描绘的,触摸屏显示器806、视频端口338、USB端口342、相机348、第一立体声扬声器354、第二立体声扬声器356、麦克风360、FM天线364、立体声耳机366、RF开关370、RF天线372、小键盘374、单声道耳麦376、振动器378以及电源380可以在片上系统322外部。
应当认识到的是,本文描述的方法步骤中的一个或多个方法步骤可以作为计算机程序指令(诸如上文描述的模块)被存储在存储器中。这些指令可以由任何适当的处理器与相应的模块结合或合作来执行,以执行本文描述的方法。
在本说明书中描述的过程或过程流中的某些步骤自然地先于其它步骤,以使本发明如所描述的运作。但是,本发明不限于所描述的步骤的次序,如果这样的次序或顺序不改变本发明的功能的话。即,要认识到的是,在不脱离本发明的范围和精神的情况下,某些步骤可以在其它步骤之前、之后或与其它步骤并行地(大体同时地)执行。在一些实例中,可以在不脱离本发明的情况下省略或不执行某些步骤。此外,诸如“其后”、“然后”、“接下来”等的词语不旨在限制步骤的次序。这些词语仅用于引导读者完成示例性方法的描述。
另外,编程领域的普通技术人员能够基于例如在本说明书中的流程图和相关联的描述,在没有困难的情况下编写计算机代码或识别适当的硬件和/或电路以实现所公开的发明。
因此,对程序代码指令的特定集合或详细的硬件设备的公开不被认为是获得对如何实现以及使用本发明的足够的理解所必须的。在上文描述中并且结合附图更加详细地解释了所要求保护的计算机实现过程的发明性功能,所述附图可以说明各个过程流。
在一个或多个示例性的方面中,所描述的功能可以在硬件、软件、固件或其任意组合中实现。如果在软件中实现,则所述功能可以作为一个或多个指令或代码存储在计算机可读介质中或者通过其进行传输。计算机可读介质包括计算机存储介质和通信介质两者,所述通信介质包括促进程序从一个地方传送到另一个地方的任何介质。存储介质可以是可由计算机或处理器存取的任何可用的介质。通过举例而非限制性的方式,这样的计算机可读介质可以包括RAM、ROM、EEPROM、NAND闪存、NOR闪存、M-RAM、P-RAM、R-RAM、CD-ROM或其它光盘存储、磁盘存储介质或其它磁存储设备、或者可以用于以指令或数据结构的形式携带或存储期望的程序代码以及可以由计算机来存取的任何其它介质。
如本文所使用的,磁盘和光盘包括压缩光盘(“CD”)、激光光盘、光盘、数字多功能光盘(“DVD”)、软盘和蓝光光盘,其中磁盘通常磁性地复制数据,而光盘则利用激光来光学地复制数据。上述的组合也应当包括在非暂时性计算机可读介质的范围内。
在不脱离本发明的精神和范围的情况下,替代实施例对于本发明所涉及的领域的技术人员将变得显而易见。因此,尽管已经详细地说明和描述了选择的方面,但是将理解的是,如下面的权利要求书所限定的,可以在不脱离本发明的精神和范围的情况下,在本文中作出各种替代和改变。

Claims (29)

1.一种用于动态地调整存储器功率状态转变定时器的方法,所述方法包括:
接收与耦合到计算设备中的处理器的存储器设备的使用相对应的变化的实时使用参数,所述参数包括存储器利用百分比和存储器工作频率;
确定针对所述存储器设备的一个或多个存储器功率状态转变定时器设置的最优值,其中,所述确定所述一个或多个存储器功率状态转变定时器设置的所述最优值包括:基于所述参数来访问查找表、或者执行对与所述一个或多个存储器功率状态转变定时器设置相关的多个设置值的迭代搜索,以确定所述最优值;以及
将针对所述存储器设备的所述存储器功率状态转变定时器设置的当前值更新为所述最优值。
2.根据权利要求1所述的方法,其中,所述存储器功率状态转变定时器设置包括用于进入较低功率存储器状态的空闲定时器设置。
3.根据权利要求1所述的方法,其中,接收所述参数包括:监测并且检测所述参数的变化。
4.根据权利要求1所述的方法,其中,所述确定所述一个或多个存储器功率状态转变定时器设置的所述最优值包括:基于所述参数来访问查找表,以确定所述最优值。
5.根据权利要求1所述的方法,其中,所述确定所述一个或多个存储器功率状态转变定时器设置的所述最优值包括:基于平均空闲定时器持续时间来计算所述最优值。
6.根据权利要求1所述的方法,其中,所述存储器设备包括动态随机存取存储器(DRAM)设备,并且所述存储器功率状态转变定时器设置包括用于将所述动态随机存取存储器(DRAM) 设备 转变到低功率模式的掉电定时器设置和页面关闭定时器设置。
7.根据权利要求1所述的方法,其中,所述确定所述一个或多个存储器功率状态转变定时器设置的所述最优值包括对多个设置值的迭代搜索。
8.根据权利要求1所述的方法,其中,所述参数还包括以下各项中的一项或多项:存储器业务模式、存储器业务量、和功率/性能模式。
9.一种用于动态地调整存储器功率状态转变定时器的系统,所述系统包括:
用于接收与耦合到计算设备中的处理器的存储器设备的使用相对应的变化的实时使用参数的单元,所述参数包括存储器利用百分比和存储器工作频率;
用于确定针对所述存储器设备的一个或多个存储器功率状态转变定时器设置的最优值的单元,其中,所述用于确定所述一个或多个存储器功率状态转变定时器设置的所述最优值的单元包括:用于基于所述参数来访问查找表、或者执行对与所述一个或多个存储器功率状态转变定时器设置相关的多个设置值的迭代搜索,以确定所述最优值的单元;以及
用于将针对所述存储器设备的所述存储器功率状态转变定时器设置的当前值更新为所述最优值的单元。
10.根据权利要求9所述的系统,其中,所述存储器功率状态转变定时器设置包括用于进入较低功率存储器状态的空闲定时器设置。
11.根据权利要求9所述的系统,其中,用于接收所述参数的单元包括:用于监测并且检测所述参数的变化的单元。
12.根据权利要求9所述的系统,其中,所述用于确定所述一个或多个存储器功率状态转变定时器设置的所述最优值的单元包括:用于基于所述参数来访问查找表,以确定所述最优值的单元。
13.根据权利要求9所述的系统,其中,所述用于确定所述一个或多个存储器功率状态转变定时器设置的所述最优值的单元包括:用于基于平均空闲定时器持续时间来计算所述最优值的单元。
14.根据权利要求9所述的系统,其中,所述存储器设备包括动态随机存取存储器(DRAM)设备,并且所述存储器功率状态转变定时器设置包括用于将所述动态随机存取存储器 (DRAM) 设备 转变到低功率模式的掉电时间设置和页面关闭定时器设置。
15.根据权利要求9所述的系统,其中,所述用于确定所述一个或多个存储器功率状态转变定时器设置的所述最优值的单元包括:用于对多个设置值进行迭代地搜索的单元。
16.根据权利要求9所述的系统,其中,所述参数还包括以下各项中的一项或多项:存储器业务模式、存储器业务量、和功率/性能模式。
17.一种体现在非暂时性计算机可读介质中并且可由处理器执行用于动态地调整存储器功率状态转变定时器的计算机程序,所述计算机程序包括被配置为进行以下操作的逻辑单元:
接收与耦合到计算设备中的处理器的存储器设备的使用相对应的变化的实时使用参数,所述参数包括存储器利用百分比和存储器工作频率;
确定针对所述存储器设备的一个或多个存储器功率状态转变定时器设置的最优值,其中,所述确定所述一个或多个存储器功率状态转变定时器设置的所述最优值包括:基于所述参数来访问查找表、或者执行对与所述一个或多个存储器功率状态转变定时器设置相关的多个设置值的迭代搜索,以确定所述最优值;以及
将针对所述存储器设备的所述存储器功率状态转变定时器设置的当前值更新为所述最优值。
18.根据权利要求17所述的计算机程序,其中,所述存储器功率状态转变定时器设置包括用于进入较低功率存储器状态的空闲定时器设置。
19.根据权利要求17所述的计算机程序,其中,所述被配置为确定所述一个或多个存储器功率状态转变定时器设置的所述最优值的逻辑单元包括被配置为进行以下操作的逻辑单元:基于所述参数来访问查找表,以确定所述最优值。
20.根据权利要求17所述的计算机程序,其中,所述被配置为确定所述一个或多个存储器功率状态转变定时器设置的所述最优值的逻辑单元包括被配置为进行以下操作的逻辑单元:基于平均空闲定时器持续时间来计算所述最优值。
21.根据权利要求17所述的计算机程序,其中,所述存储器设备包括动态随机存取存储器(DRAM)设备,并且所述存储器功率状态转变定时器设置包括用于将所述动态随机存取存储器 (DRAM) 设备 转变到低功率模式的掉电时间设置和页面关闭定时器设置。
22.根据权利要求17所述的计算机程序,其中,所述被配置为确定所述一个或多个存储器功率状态转变定时器设置的所述最优值的逻辑单元包括对多个设置值的迭代搜索。
23.根据权利要求17所述的计算机程序,其中,所述参数还包括以下各项中的一项或多项:存储器业务模式、存储器业务量、和功率/性能模式。
24.一种计算机系统,包括:
存储器设备;
片上系统(SoC),所述片上系统 (SoC) 包括处理器和存储器控制器,所述存储器控制器电气地耦合到所述存储器设备;以及
由所述处理器执行的存储器调度器,所述存储器调度器被配置为进行以下操作:
监测与所述存储器设备的使用相对应的变化的实时使用参数,所述参数包括存储器利用百分比和存储器工作频率,以及
确定所述存储器控制器进入低功率存储器状态所使用的一个或多个存储器功率状态转变定时器设置的最优值,其中,所述一个或多个存储器功率状态转变定时器设置的所述最优值是通过基于所监测的参数来访问查找表、或者执行对与所述一个或多个存储器功率状态转变定时器设置相关的多个设置值的迭代搜索来确定的。
25.根据权利要求24所述的计算机系统,其中,所述存储器功率状态转变定时器设置包括空闲定时器设置。
26.根据权利要求24所述的计算机系统,其中,所述一个或多个存储器功率状态转变定时器设置的所述最优值是通过访问查找表来确定的。
27.根据权利要求24所述的计算机系统,其中,所述最优值是基于平均空闲定时器持续时间来计算的。
28.根据权利要求24所述的计算机系统,其中,所述存储器设备包括动态随机存取存储器(DRAM)设备,并且所述存储器功率状态转变定时器设置包括用于进入低功率存储器状态的掉电时间设置和页面关闭定时器设置。
29.根据权利要求24所述的计算机系统,其中,所述参数还包括以下各项中的一项或多项:存储器业务模式、存储器业务量、和功率/性能模式。
CN201680050888.7A 2015-09-04 2016-08-05 用于动态地调整存储器状态转变定时器的系统和方法 Active CN107924225B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/846,306 2015-09-04
US14/846,306 US9690364B2 (en) 2015-09-04 2015-09-04 Systems and methods for dynamically adjusting memory state transition timers
PCT/US2016/045673 WO2017039950A1 (en) 2015-09-04 2016-08-05 Systems and methods for dynamically adjusting memory state transition timers

Publications (2)

Publication Number Publication Date
CN107924225A CN107924225A (zh) 2018-04-17
CN107924225B true CN107924225B (zh) 2022-05-13

Family

ID=56684785

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680050888.7A Active CN107924225B (zh) 2015-09-04 2016-08-05 用于动态地调整存储器状态转变定时器的系统和方法

Country Status (8)

Country Link
US (1) US9690364B2 (zh)
EP (1) EP3345070B1 (zh)
JP (1) JP2018527676A (zh)
KR (1) KR20180048993A (zh)
CN (1) CN107924225B (zh)
BR (1) BR112018004376B1 (zh)
TW (1) TWI630610B (zh)
WO (1) WO2017039950A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180335828A1 (en) * 2017-05-19 2018-11-22 Qualcomm Incorporated Systems and methods for reducing memory power consumption via device-specific customization of ddr interface parameters
US10642337B2 (en) * 2017-08-03 2020-05-05 Qualcomm Incorporated Active power management in a computing device subsystem based on micro-idle duration
KR102480017B1 (ko) * 2017-08-11 2022-12-21 삼성전자 주식회사 입출력 장치의 성능 및 전력소모를 조절하는 메모리 컨트롤러, 어플리케이션 프로세서 및 메모리 컨트롤러의 동작방법
US11176986B2 (en) * 2019-12-30 2021-11-16 Advanced Micro Devices, Inc. Memory context restore, reduction of boot time of a system on a chip by reducing double data rate memory training
CN114020140B (zh) * 2020-02-12 2023-11-28 地平线(上海)人工智能技术有限公司 控制硬件模块的方法及装置、电子设备和存储介质
US20200310517A1 (en) * 2020-05-28 2020-10-01 Intel Corporation Adaptive lower power state entry and exit
US11640251B2 (en) 2021-01-20 2023-05-02 Western Digital Technologies, Inc. Early transition to low power mode for data storage devices
US11934252B2 (en) * 2021-03-17 2024-03-19 Micron Technology, Inc. Shallow hibernate power state
US20230065593A1 (en) * 2021-08-31 2023-03-02 Micron Technology, Inc. Memory traffic monitoring
US11886220B2 (en) * 2022-05-05 2024-01-30 Qualcomm Incorporated Dynamic power-down management in a computing device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010198535A (ja) * 2009-02-27 2010-09-09 Nec Corp 消費電力低減回路および消費電力低減方法
CN102365605A (zh) * 2009-04-02 2012-02-29 高通股份有限公司 用于存储器的多电力模式系统和方法
CN104699642A (zh) * 2013-12-06 2015-06-10 佳能株式会社 信息处理装置、数据传送装置及数据传送装置的控制方法

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905901A (en) 1996-10-29 1999-05-18 Micron Electronics Method for adaptive power management of a computer system
US6820209B1 (en) * 1999-07-15 2004-11-16 Apple Computer, Inc. Power managed graphics controller
US6563746B2 (en) 1999-11-09 2003-05-13 Fujitsu Limited Circuit for entering/exiting semiconductor memory device into/from low power consumption mode and method of controlling internal circuit at low power consumption mode
US6910114B2 (en) * 2002-11-15 2005-06-21 Intel Corporation Adaptive idle timer for a memory device
EP1617315A1 (en) 2004-07-13 2006-01-18 Harman Becker Automotive Systems GmbH Adaptive time-out system
US7610497B2 (en) 2005-02-01 2009-10-27 Via Technologies, Inc. Power management system with a bridge logic having analyzers for monitoring data quantity to modify operating clock and voltage of the processor and main memory
JP2006343946A (ja) * 2005-06-08 2006-12-21 Kyocera Mita Corp メモリアクセス制御装置及びコンピュータプログラム
TW200825705A (en) * 2006-04-26 2008-06-16 Nxp Bv Method and system for power-state transition controllers
US7930565B2 (en) * 2006-09-11 2011-04-19 Texas Instruments Incorporated Power-optimizing memory analyzer, method of operating the analyzer and system employing the same
US7689850B2 (en) 2006-11-28 2010-03-30 Dell Products L.P. System and method for adaptive information handling system power management
US8090967B2 (en) * 2008-05-23 2012-01-03 Intel Corporation Power state transition initiation control of memory interconnect based on early warning signal, memory response time, and wakeup delay
CN102081964B (zh) * 2009-11-30 2014-12-10 国际商业机器公司 动态随机访问存储器刷新的方法和系统
US20110185208A1 (en) * 2010-01-28 2011-07-28 Apple Inc. Memory power reduction in a sleep state
US8738937B2 (en) * 2010-07-13 2014-05-27 Intel Corporation Method and apparatus to limit memory power
US8555095B2 (en) * 2010-07-26 2013-10-08 Apple Inc. Methods and systems for dynamically controlling operations in a non-volatile memory to limit power consumption
US20120159230A1 (en) * 2010-12-17 2012-06-21 Hao Chen Mechanism for Updating Memory Controller Timing Parameters During a Frequency Change
TWI471866B (zh) * 2011-02-14 2015-02-01 Innostor Technology Corp Power saving external USB mass storage device (mass storage device) and its power saving method
US8527792B2 (en) * 2011-05-13 2013-09-03 Synology Incorporated Power saving method and apparatus thereof
JP5681576B2 (ja) * 2011-06-29 2015-03-11 ルネサスエレクトロニクス株式会社 ホストコントローラ装置、情報処理装置及びイベント情報出力方法
US8782454B2 (en) 2011-10-28 2014-07-15 Apple Inc. System and method for managing clock speed based on task urgency
US9104421B2 (en) * 2012-07-30 2015-08-11 Nvidia Corporation Training, power-gating, and dynamic frequency changing of a memory controller
CN102929381B (zh) 2012-10-22 2015-08-05 威盛电子股份有限公司 电子系统及其电源管理方法
US8971194B2 (en) 2012-10-29 2015-03-03 At&T Intellectual Property I, L.P. Controlling wireless transition timers based on application and content
US20140157026A1 (en) 2012-12-05 2014-06-05 Advanced Micro Devices, Inc. Methods and apparatus for dynamically adjusting a power level of an electronic device
US8842324B1 (en) * 2013-03-13 2014-09-23 Xerox Corporation Method and device for accurately estimating power consumption
TWI641943B (zh) * 2013-03-15 2018-11-21 美商英特爾公司 控制電源供應單元於閒置狀態期間的功率消耗之技術
US9704557B2 (en) * 2013-09-25 2017-07-11 Qualcomm Incorporated Method and apparatus for storing retention time profile information based on retention time and temperature

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010198535A (ja) * 2009-02-27 2010-09-09 Nec Corp 消費電力低減回路および消費電力低減方法
CN102365605A (zh) * 2009-04-02 2012-02-29 高通股份有限公司 用于存储器的多电力模式系统和方法
CN104699642A (zh) * 2013-12-06 2015-06-10 佳能株式会社 信息处理装置、数据传送装置及数据传送装置的控制方法

Also Published As

Publication number Publication date
US9690364B2 (en) 2017-06-27
BR112018004376B1 (pt) 2023-12-05
EP3345070A1 (en) 2018-07-11
EP3345070B1 (en) 2022-04-13
TW201719651A (zh) 2017-06-01
WO2017039950A1 (en) 2017-03-09
CN107924225A (zh) 2018-04-17
JP2018527676A (ja) 2018-09-20
TWI630610B (zh) 2018-07-21
KR20180048993A (ko) 2018-05-10
BR112018004376A2 (pt) 2018-10-02
US20170068308A1 (en) 2017-03-09

Similar Documents

Publication Publication Date Title
CN107924225B (zh) 用于动态地调整存储器状态转变定时器的系统和方法
US9378536B2 (en) CPU/GPU DCVS co-optimization for reducing power consumption in graphics frame processing
KR102189115B1 (ko) 대칭형 다중 프로세서를 구비한 시스템 온-칩 및 이를 위한 최대 동작 클럭 주파수 결정 방법
US8656196B2 (en) Hardware automatic performance state transitions in system on processor sleep and wake events
JP6203425B2 (ja) 共有電力領域における異種プロセッサにわたる動的電力管理のための装置、システムおよび方法
US9939869B2 (en) Methods and systems for coordination of operating states amongst multiple SOCs within a computing device
US10064141B2 (en) Core frequency/count decision-based thermal mitigation optimization for a multi-core integrated circuit
US10296069B2 (en) Bandwidth-monitored frequency hopping within a selected DRAM operating point
US9507641B1 (en) System and method for dynamic granularity control of parallelized work in a portable computing device (PCD)
US10725525B2 (en) Method of operating system-on-chip, system-on-chip performing the same and electronic system including the same
US9760145B2 (en) Saving the architectural state of a computing device using sectors
TWI772438B (zh) 用於計算設備中的動態緩衝器大小設定的系統和方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant