CN107077189A - 用于降低便携式计算设备中的易失性存储器待机功率的***和方法 - Google Patents
用于降低便携式计算设备中的易失性存储器待机功率的***和方法 Download PDFInfo
- Publication number
- CN107077189A CN107077189A CN201580062723.7A CN201580062723A CN107077189A CN 107077189 A CN107077189 A CN 107077189A CN 201580062723 A CN201580062723 A CN 201580062723A CN 107077189 A CN107077189 A CN 107077189A
- Authority
- CN
- China
- Prior art keywords
- storehouse
- compression
- content
- volatile memory
- standby power
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3275—Power saving in memory, e.g. RAM, cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/4074—Power supply or voltage generation circuits, e.g. bias voltage generators, substrate voltage generators, back-up power, power control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1028—Power efficiency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/40—Specific encoding of data in memory or cache
- G06F2212/401—Compressed data
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Sources (AREA)
- Memory System (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
公开了用于降低便携式计算设备中的易失性存储器待机功率的***和方法的各种实施例。一个这种方法涉及接收易失性存储器设备的进入待机功率模式的请求。确定用于压缩存储于所述易失性存储器设备的多个库中的内容的一个或多个压缩参数。基于所述一个或多个压缩参数来压缩存储的内容以释放所述多个库中的至少一个库。本方法在所述待机功率模式期间禁用通过压缩而释放的所述多个库中的一个或多个库的至少一部分的自刷新。
Description
相关申请的交叉引用
本申请要求享有于2014年11月20日递交的、名称为“SYSTEMS AND METHODS FORREDUCING VOLATILE MEMORY STANDBY POWER IN A PORTABLE COMPUTING DEVICE”的美国临时专利申请No.62/082,434(代理人案号No.17006.0381U1)的优先权的权益,在此通过引用的方式将该申请的全部内容并入。
技术领域
便携式计算设备(例如,笔记本、超级本、蜂窝电话、智能电话、平板电脑、便携式数字助理(PDA)以及便携式游戏控制台)和可穿戴计算设备(例如,智能手表、健身追踪器、运动与全球定位***(GPS)手表、心率监控器以及全球定位***(GPS)设备)持续提供不断扩展的特征和服务阵列。便携式和可穿戴计算设备为用户提供了前所未有的信息、资源及通信获取水平。为了跟上这些服务增强,这类设备已经变得更强大且更复杂。便携式和可穿戴计算设备现在通常包括片上***(SoC),其包括嵌入在单个硅基板上的一个或多个芯片部件(例如,多个中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器等)。SoC耦合到易失性存储器,例如,动态随机存取存储器(DRAM)。DRAM可以包括各种类型的双数据率(DDR)同步DRAM,包括针对低功率DDR(LPDDR)和图形DDR(GDDR)的各种标准。
在许多便携式和可穿戴计算设备中,当设备不活动时,DDR存储器通常置于待机功率或睡眠模式以节约电池功率。然而,即使在待机时,DDR仍然消耗大量的总待机功率预算。待机功率通常是移动设备的关键竞争度量标准,因此其直接影响用户体验(例如,电池寿命、使用天数(DoU))。当处于待机模式时,DDR存储器的***电路被断电。存储器内的硬件状态机保持唤醒以周期性地刷新(“自刷新”)DDR存储器阵列中的行,以防止存储器内容的损坏。在待机模式中,自刷新电流是功率消耗的关键来源。
为了降低待机功率,一些现有解决方案依赖软件来压缩DDR中的所有数据内容,并且将压缩的内容保存到硬件驱动或闪存中。当退出待机模式并进入活动模式时,压缩的存储器内容(或存储器图像)首先从硬件驱动或闪存中被取回,被解压缩,并且然后存储回到DDR存储器中。由于压缩和解压缩由应用处理器执行,所以需要移动设备的睡眠周期相对长(例如,在大多数情况下为大约几小时),以补偿在压缩并将压缩的内容存储至硬件驱动或闪存中、以及从硬件驱动或闪存中取回并恢复的过程中所消耗的功率。在利用硬件驱动的情况下,另一个缺陷是其存取时间长,导致睡眠或唤醒时间长。在利用闪存的情况下,另一个缺陷是具有有限数量的编程/擦除(P/E)周期。例如,为了在具有典型的3000P/E周期的两位MLC(多级单元)闪存设备中存储1GB的压缩的DDR内容,实施方式可能需要高达16GB的闪存来实现冗余,因为MLC闪存的每个GB只能被擦除和写入3000次。然而,另外一个缺陷是许多存储器控制器执行库交错,这意味着整个DDR内容需要被压缩或根本不压缩。其它解决方案依赖于操作***(O/S)结束进程以释放存储器,除其它缺陷之外,这还要求复杂的软件重构。
因此,本领域中需要用于降低便携式计算设备中的DRAM存储器待机功率的改进的***和方法。
发明内容
公开了用于降低便携式计算设备中的易失性存储器待机功率的***和方法的各种实施例。一个这种方法包括接收易失性存储器设备的进入待机功率模式的请求。确定用于压缩存储于易失性存储器设备的多个库中的内容的一个或多个压缩参数。基于所述一个或多个压缩参数压缩存储的内容以释放多个库的至少其中之一。在待机功率模式期间,该方法禁用通过压缩而释放的多个库中的一个或多个的至少一部分的自刷新。
另一个实施例是用于降低便携式计算设备中的易失性存储器待机功率的***。一个这种***包括耦合到DRAM控制器的动态随机存取存储器(DRAM)设备。DRAM设备包括包含存储器内容的多个库。DRAM控制器包括被配置为绕过地址交错部件的DRAM压缩部件。DRAM压缩部件包括逻辑,所述逻辑被配置为:接收SoC或DRAM控制器的进入待机功率模式的请求;确定用于压缩存储于多个库中的存储器内容的一个或多个压缩参数;基于一个或多个压缩参数来压缩存储器内容以释放所述多个库的至少其中之一;并且在待机功率模式期间,禁用通过压缩而释放的多个库中的一个或多个的至少一部分的自刷新。
附图说明
在附图中,除非另外指示,否则相似的附图标记贯穿各个视图指代相似的部件。对于带有字母字符标号的附图标记,例如“102A”或“102B”,字母字符标号可以区分同一图中的两个相似的部件或元件。当旨在使附图标记涵盖所有图中的具有相同附图标记的所有部件时,可以省略附图标记的字母字符标号。
图1是示出了用于降低便携式计算设备中的DRAM存储器待机功率的***的实施例的框图。
图2是示出了在图1的***中的DRAM压缩部件的实施例的框图。
图3是示出了在图1的***中实施的用于降低DRAM存储器待机功率的方法的实施例的流程图。
图4是示出了被压缩的示范性DRAM设备的示意图。
图5是示出了用于压缩DRAM内容的方法的实施例的流程图。
图6示出了并入示范性便携式计算设备(PCD)中的图1的***。
具体实施方式
词语“示范性”在本文中用于表示“用作示例、实例或说明”。本文中被描述为“示范性”的任何方面不一定要被解释成相对于其它方面是优选的或有利的。
在本说明书中,术语“应用”或“图像”也可以包括具有可执行内容的文件,例如:目标代码、脚本、字节代码、标记语言文件以及补丁。此外,本文提及的“应用”也可以包括本质上不可执行的文件,例如可能需要被打开的文档或需要被存取的其它数据文件。
术语“内容”也可以包括具有可执行内容的文件,例如:目标代码、脚本、字节代码、标记语言文件以及补丁。此外,本文提交的“内容”也可以包括本质上不可执行的文件,例如可能需要被打开的文档或需要被存取的其它数据文件。
如在本说明书中使用的,术语“部件”、“数据库”、“模块”、“***”等旨在指代计算机相关的实体,硬件、固件、硬件与软件的组合、软件、或执行中的软件。例如,部件可以是但不限于在处理器上运行的进程、处理器、对象、可执行文件、执行的线程、程序和/或计算机。通过例示的方式,在计算设备上运行的应用以及计算设备都可以是部件。一个或多个部件可以驻留在进行和/或执行的线程内,并且部件可以位于一个计算机上和/或分布在两个或更多计算机之间。此外,这些部件可以从具有存储于其上的各种数据结构的各种计算机可读介质执行。所述部件可以例如根据具有一个或多个数据分组(例如,来自通过信号的方式与本地***、分布式***中的另一部件交互和/或跨越诸如因特网等网络而与其它***交互的一个部件的数据)的信号通过本地和/或远程进程的方式来进行通信。
图1示出了用于降低便携式计算设备中的DRAM存储器待机功率的***100的实施例的框图。应当理解的是,***100可以在任何计算设备中实现,包括个人计算机、工作站、服务器和便携式计算设备(PCD)。适合的PCD可以包括例如移动电话、便携式数字助理(PDA)、便携式游戏控制台、掌上计算机、平板计算机或可穿戴计算设备(例如,智能手表、健身追踪器、心率监控器、GPS跟踪设备等)。
***100包括片上***(SoC)102,其耦合到例如DRAM 104的易失性存储器。DRAM104可以包括一个或多个存储器集成电路。应当理解的是,DRAM 104可以包括各种类型的双数据率(DDR)同步DRAM,包括针对低功率DDR(LPDDR)和图形DDR(GDDR)的各种已知接口标准。SoC 102包括经由例如SoC总线105耦合到DRAM存储器控制器110的一个或多个处理设备。处理设备或主机可以包括中央处理单元(CPU)106、图形处理单元(GPU)108、数字信号处理器(DSP)、视频编码/解码引擎107、调制解调器109、无线连接逻辑块111或任何其它存储器客户端。
DRAM控制器110控制通往DRAM 104的存储器读/写事务。在实施例中,DRAM控制器110包括地址交错逻辑112、读/写收集队列114、DRAM协议引擎116和DRAM压缩部件120。如本领域已知的,地址交错逻辑112被配置为通过跨存储器库均匀地扩展存储器地址来使通往DRAM 104的读和写事务交错。通过这种方式,连续的存储器读和写事务可以依次使用每个存储器库,进而由于降低了存储器库变得可用于期望的操作的等待时间而产生较高的存储器吞吐量。读/写收集队列114通过从主机中将读和写分组至同一页面以使它们能够尽可能紧密地一起被执行而提高了DRAM存储器的利用效率。通过这种方式,来自主机的许多读或写事务共同分担使库可用的成本(例如,关闭和/或打开库中的页面)。DRAM协议引擎116为DRAM 104提供接口,以使所有的读和写能够被正确执行,以满足DRAM存储器接口标准中规定的所有定时要求。
如以下更详细的描述,DRAM压缩部件120被配置为压缩DRAM 104的内容,并将存储器设备配置为阻止已释放的库的自刷新。由于已释放的库不包含有效信息,因此在待机模式期间无需自刷新,这降低了功率消耗并延长了电池寿命。在图1的实施例中,DRAM压缩部件120包括压缩引擎124、有限状态机122、以及用于存储DRAM库压缩状态126的一个或多个寄存器。如图1所示,DRAM压缩部件120可以被配置为绕过地址交错逻辑112,由此使压缩引擎124能够压缩DRAM 104中的库中的任一个。应该理解的是,压缩引擎124可以支持任何类型的压缩算法。在实施例中,压缩算法包括无损数据压缩算法,例如,已知的Lempel-Ziv(LZ)或其它压缩方法中的任一种。
有限状态机122维护DRAM 104中每个库的状态数据,以确定库是压缩的、部分压缩的还是未压缩的。在部分压缩的情况下,也将记录压缩内容的位置和大小。在图2的示例中,DRAM 104可以包括八个或更多库(库0-库7)。状态201、203、205、207、209、211、213以及215分别对应于库0、库1、库2、库3、库4、库5、库6和库7。库状态可以存储在一个或多个寄存器中。如图2中所示,每个库的状态数据可以包括具有压缩状态、部分压缩状态、或未压缩状态的库压缩状态206。如果库处于压缩状态,可以存储附加的状态数据以用于管理压缩/解压缩,包括一个或多个压缩块的尺寸和起始地址。在图2中,库0处于压缩状态。字段208包括压缩内容的块1的尺寸,并且字段210识别块1的起始地址。字段212包括压缩内容的块2的尺寸,并且字段214识别块2的起始地址。
图3示出了由DRAM压缩部件120实施方法300的实施例。在块302,接收将DRAM 104置于待机功率模式的请求。应该理解的是,在所有主机被断电后,可以通过在CPU主机或功率管理器上执行的软件命令或通过SoC(未在图中示出)上的硬件压缩引擎外部的硬件有限状态机来启动DRAM 104的进入待机功率模式的请求。有限状态机122可以被配置有用于压缩存储在库中的内容的一个或多个压缩参数。例如,压缩参数可以指定压缩块的尺寸、待压缩的库的数量、溢出库的位置等。压缩参数可以被提供给DRAM压缩部件120,或以其它方式被编程或存储在有限状态机122中。在块304,确定压缩参数。在块306,排空存储器客户端(例如CPU 106、GPU 108)的所有存储器事务。当所有存储器内容被排空并存储在DRAM104中,存储器客户端可以被断电(块308)。在块310,基于压缩参数来压缩存储器内容。例如,假定压缩比是2:1,两个库中的内容可以被压缩到单个库中,这释放了一个库。如果压缩算法不产生溢出压缩内容,则更新库的压缩状态数据(块314)并指导功率管理器使DRAM控制器110断电。然而,如果存在溢出内容,则压缩引擎压缩(块318)该剩余内容并将由此产生的压缩内容存储在压缩参数识别的溢出库中,之后DRAM控制器110可以被断电(块316)。如果存在与压缩算法相关联的元数据,则可以将元数据存储在针对快速解压缩时间的压缩引擎中的寄存器中或存储在针对硅面积效率的DRAM中。
图4示出了在压缩之前处于第一状态402并且在压缩之后处于第二状态404的示范性DRAM设备104。DRAM设备104包括八个库(库0-库7),每个库包括未压缩内容。库2和3中的未压缩内容被压缩到库2中。库4和5被压缩到库3中,并且库6和7被压缩到库4中。如在已经完成压缩之后的第二状态404中所示,库5、6和7被释放。由于库5、6和7不再包含有效内容,无需对这些库执行自刷新。只有库0-4需要被自刷新。应该理解的是,可以以各种方式禁用自刷新,包括例如在每个库的基础上针对一个或多个库、多个库、或一个或多个库的部分或片段。以这种方式中,可以降低待机功率模式期间的自刷新操作的功率消耗。
如图4所示,溢出压缩内容406可以与其它未压缩内容一起存储在库1中,以使得库1成为部分压缩库。当设备再次变得活动并且DRAM控制器110被加电时(即,离开待机功率模式),在压缩内容被解压缩以返回到状态402之前或之时,可以首先读取未压缩内容(库0和1)。压缩算法也可以在库之一中(例如,库4-图4)、在溢出库中或在状态寄存器之一中产生和存储元数据217。对于要求使用元数据的压缩算法,元数据217可以包括用于控制对压缩内容的解压缩的数据。元数据217可以包括在压缩时待更新的最后块和在解压缩时待取回的第一块。为了最大限度节约功率,压缩引擎通常被配置为压缩尽可能多的库,通常高达N-2个库,其中N为DRAM存储器中的库的总数量。剩余的两个库被保留为溢出库。这些溢出库通常包含唤醒可能需要的任何O/S代码以及用于在唤醒后立即快速显示的帧缓冲器内容。
图5示出了用于压缩DRAM 104(图4)中的内容的方法500的示范性实施例。在块502,压缩逻辑被配置有上述的压缩参数。在排空存储器操作(块306-图3)后,可以指导压缩引擎124基于压缩参数启动压缩。在块506,有限状态机122指导压缩引擎124开始从待压缩的第一库(库2-图4)进行提取。在块508,压缩引擎124将库2底部的第一页面提取到第一压缩缓冲器(存储器缓冲器202-图2)中,并开始压缩该页面。在压缩引擎124压缩第一页面时,在块510,提取逻辑继续从库2提取第二页面的内容。在块512,当第一页面的压缩完成时,将压缩内容写入库2中现在为空的第一页面。如果库2的压缩没有完成(判定块514),过程流返回到块510。当库2的压缩完成时,以相似的方式压缩其它库(判定块516)。当所有库都被压缩时,可以更新库状态126(块520)。如果存在溢出内容(判定块518),则该内容被压缩并将溢出内容写入溢出库。
如上所述,***100可以并入任何期望的计算***中。可能特别有利的是,在其中较短的休眠次数使得难以节省休眠功率的便携式计算设备或可穿戴设备中实施***100。图6示出了并入示范性便携式或可穿戴计算设备(PCD)600的***100。片上***(SoC)102包括DRAM控制器110。显示控制器328和触摸屏控制器606可以耦合到包括第0核610、第1核612以及第n核614的多核602。片上***102外部的触摸屏显示器606可以耦合到显示器控制器328和触摸屏控制器330。
图6进一步示出了MPEG(动态图像专家组)视频编码器334耦合到多核处理器602。此外,视频放大器336耦合到视频编码器334和触摸屏显示器606。此外,视频端口338耦合到视频放大器336。如图6中所示,通用串行总线(USB)控制器340耦合到处理器集群中的一个或多个。此外,USB端口342耦合到USB控制器340。存储器104和用户识别模块(SIM)卡346也可以耦合到多核处理器602。
数码相机348可以耦合到多核处理器602。在示范性方面,数码相机348是电荷耦合器件(CCD)相机或互补金属氧化物半导体(CMOS)相机。立体声音频编码解码器(CODEC)350可以耦合到多核处理器602。另外,音频放大器352可以耦合到立体声音频CODEC 350。在示范性方面,第一立体声扬声器354及第二立体声扬声器356耦合到音频放大器352。麦克风放大器358也可以耦合到立体声音频CODEC 350。此外,麦克风360可以耦合到麦克风放大器358。在特定方面,频率调制(FM)无线电调谐器362可以耦合到立体声音频CODEC 350。而且,FM天线364耦合到FM无线电调谐器362。此外,立体声耳机366可以耦合到立体声音频CODEC350。
图6进一步示出了射频(RF)收发器368可以耦合到多核处理器602。RF开关370可以耦合到RF收发器368和RF天线372。键盘204、具有麦克风的单声道耳机376、以及振动器设备378可以耦合到处理器126。
图6还示出了电源380可以耦合到片上***102。在特定方面,电源380是直流(DC)电源,其将电力提供给PCD 600的需要电力的各种部件。此外,在特定方面,电源是可再充电DC电池或从连接到AC电源的交流(AC)到DC变压器得到的DC电源。
图6进一步指示PCD 600也可以包括可以用于接入数据网络(例如,局域网、个人区域网或任何其它网络)的网卡388。网卡388可以是蓝牙网卡、WiFi网卡、个人区域网(PAN)卡、个人区域网超低功率技术(PeANUT)网卡、电视/有线/卫星调谐器、或本领域中公知的任何其它网卡。此外,网卡388可以并入芯片中,即,网卡388可以是芯片中的完全解决方案,并且可能并非独立网卡388。
参见图6,应理解的是,存储器104、触摸屏显示器606、视频端口338、USB端口342、相机348、第一立体声扬声器354、第二立体声扬声器356、麦克风360、FM天线364、立体声耳机366、RF开关370、RF天线372、键盘374、单声道耳机376、振动器378以及电源380可以在片上***102的外部。
本说明书中所描述的过程或过程流中的某些步骤自然地发生在其它步骤之前,以使本发明如所描述的那样起作用。然而,本发明不限于所描述的步骤的次序,只要这种次序或序列不更改本发明的功能性。即,应认识到,一些步骤可以在其它步骤之前、之后或与其它步骤并行地(大体上同时地)执行而不脱离本发明的精神和范围。在一些情况下,某些步骤可以被省略或不执行而不脱离本发明。此外,例如“其后”、“然后”、“接下来”等词语不是要限制步骤的次序。这些词语仅用于引导读者阅读对示范性方法的描述。
另外,编程领域的普通技术人员能够编写计算机代码或识别适当的硬件和/或电路以基于(例如)本说明书中的流程图和相关联的描述来无困难地实施所公开的发明。
因此,对于充分理解如何制作和使用本发明来说,对程序代码指令或详细的硬件设备的特定集合的公开不被视为是必需的。在以上描述中且结合可以示出各种过程流的图更详细地阐释所主张的计算机实施的过程的发明性功能性。
在一个或多个示范性方面中,可以以硬件、软件、固件或其任何组合来实施所描述的功能。如果以软件实施,则可以将功能作为一个或多个指令或代码在计算机可读介质上进行存储或传输。计算机可读介质包括计算机存储介质以及包括促进计算机程序从一处传递到另一处的任何介质的通信介质两者。存储介质可以是可以由计算机访问的任何可用介质。举例来说而非限制地,这种计算机可读介质可以包括RAM、ROM、EEPROM、NAND flash、NORflash、M-RAM、P-RAM、R-RAM、CD-ROM或其它光盘存储、磁盘存储或其它磁性存储设备,或可以用以载运或存储采用指令或数据结构的形式的期望的程序代码并且可以由计算机存取的任何其它介质。
同样,可以恰当地将任何连接称作计算机可读介质。例如,如果使用同轴电缆、光纤电缆、双绞线、数字用户线(DSL)或例如红外线、无线电及微波的无线技术从网站、服务器或其它远程源传输软件,则同轴电缆、光纤电缆、双绞线、DSL或例如红外线、无线电及微波的无线技术包括在介质的定义中。
如本文中所使用,磁盘及光盘包括压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软磁盘及蓝光光盘,其中磁盘通常磁性地复制数据,而光盘使用激光光学地再现数据。以上的组合也应该包括在计算机可读介质的范围内。
替代实施例对于本发明所属领域的普通技术人员而言是显而易见的,而不会脱离本发明的精神和范围。因此,虽然已详细地示出和描述了选定方面,但应理解,可以在其中进行各种替代和更改而不脱离如由所附权利要求限定的本发明的精神和范围。
Claims (30)
1.一种用于降低便携式计算设备中的易失性存储器待机功率的方法,所述方法包括:
接收对易失性存储器设备进入待机功率模式的请求;
确定用于压缩存储于所述易失性存储器设备的多个库中的内容的一个或多个压缩参数;
基于所述一个或多个压缩参数来压缩所存储的内容以释放所述多个库中的至少一个库;以及
在所述待机功率模式期间,禁用通过所述压缩而释放的所述多个库中的一个或多个库的至少一部分的自刷新。
2.根据权利要求1所述的方法,其中,所述压缩参数包括压缩块的大小、待压缩的库的数量、以及溢出库中的一者或多者。
3.根据权利要求2所述的方法,其中,所述压缩所存储的内容还包括:将压缩的溢出内容写入所述溢出库。
4.根据权利要求1所述的方法,还包括:在对压缩的内容进行解压缩时,存储用于识别待取回的第一块的压缩元数据。
5.根据权利要求1所述的方法,其中,禁用自刷新包括:禁用一个或多个库片段或者所述多个库中的一个或多个库的自刷新。
6.根据权利要求1所述的方法,其中,所述易失性存储器设备包括双数据率(DDR)存储器。
7.根据权利要求6所述的方法,其中,所述DDR存储器包括低功率DDR(LPDDR)存储器。
8.根据权利要求1所述的方法,其中,所述便携式计算设备包括移动电话和可穿戴设备之一。
9.根据权利要求1所述的方法,还包括:
将针对所述多个库的压缩状态存储在有限状态机中。
10.根据权利要求9所述的方法,还包括:
将所述易失性存储器设备中的每个压缩的内容块的内容块大小和起始地址存储在所述有限状态机中。
11.一种用于降低便携式计算设备中的易失性存储器待机功率的***,所述***包括:
用于接收对易失性存储器设备进入待机功率模式的请求的单元;
用于确定用于压缩存储于所述易失性存储器设备的多个库中的内容的一个或多个压缩参数的单元;
用于基于所述一个或多个压缩参数来压缩所存储的内容以释放所述多个库中的至少一个库的单元;以及
用于在所述待机功率模式期间禁用通过所述压缩而释放的所述多个库中的一个或多个库的至少一部分的自刷新的单元。
12.根据权利要求11所述的***,其中,所述压缩参数包括压缩块的大小、待压缩的库的数量以及溢出库中的一者或多者。
13.根据权利要求12所述的***,还包括:
用于将压缩的溢出内容写入所述溢出库的单元。
14.根据权利要求11所述的***,还包括:
用于在对压缩的内容进行解压缩时,存储用于识别待取回的第一块的压缩元数据的单元。
15.根据权利要求14所述的***,其中,所述用于禁用自刷新的单元包括:用于禁用一个或多个库片段或者所述多个库中的一个或多个库的自刷新的单元。
16.根据权利要求11所述的***,其中,所述易失性存储器设备包括双数据率(DDR)存储器。
17.根据权利要求16所述的***,其中,所述DDR存储器包括图形DDR(GDDR)存储器和低功率DDR(LPDDR)存储器之一。
18.根据权利要求11所述的***,其中,所述便携式计算设备包括移动电话和可穿戴设备之一。
19.根据权利要求11所述的***,还包括:
用于将针对所述多个库的压缩状态存储在有限状态机中的单元。
20.根据权利要求19所述的***,还包括:
用于将所述易失性存储器设备中的每个压缩的内容块的内容块大小和起始地址存储在所述有限状态机中的单元。
21.一种用于降低便携式计算设备中的易失性存储器待机功率的计算机程序,所述计算机程序体现在计算机可读介质中并且能够由处理器执行,所述计算机程序包括被配置为进行以下操作的逻辑:
接收对易失性存储器设备进入待机功率模式的请求;
确定用于压缩存储于所述易失性存储器设备的多个库中内容的一个或多个压缩参数;
基于所述一个或多个压缩参数来压缩所存储的内容以释放所述多个库中的至少一个库;以及
在所述待机功率模式期间,禁用通过所述压缩而释放的所述多个库中的一个或多个库的至少一部分的自刷新。
22.根据权利要求21所述的计算机程序,其中,所述压缩参数包括压缩块的大小、待压缩的库的数量以及溢出库中的一者或多者。
23.根据权利要求22所述的计算机程序,其中,所述被配置为压缩所存储的内容的逻辑还包括:被配置为将压缩的溢出内容写入所述溢出库的逻辑。
24.根据权利要求21所述的计算机程序,还包括:
被配置为在对压缩的内容进行解压缩时,存储用于识别待取回的第一块的压缩元数据的逻辑。
25.根据权利要求24所述的计算机程序,其中,所述被配置为禁用自刷新的逻辑包括:被配置为禁用一个或多个库片段或者所述多个库中的一个或多个库的自刷新的逻辑。
26.一种用于降低便携式计算设备中易失性存储器待机功率的***,所述***包括:
动态随机存取存储器(DRAM)设备,其包括包含存储器内容的多个库;以及
DRAM控制器,其耦合到所述DRAM设备,所述DRAM控制器包括被配置为绕过地址交错部件的DRAM压缩部件,所述DRAM压缩部件包括被配置为进行以下操作的逻辑:
接收对所述DRAM设备进入待机功率模式的请求;
确定用于压缩存储于所述多个库中的所述存储器内容的一个或多个压缩参数;
基于所述一个或多个压缩参数来压缩所述存储器内容以释放所述多个库中的至少一个库;以及
在所述待机功率模式期间,禁用通过所述压缩而释放的所述多个库中的一个或多个库的至少一部分的自刷新。
27.根据权利要求26所述的***,其中,所述压缩参数包括压缩块的大小、待压缩的库的数量以及溢出库中的一者或多者。
28.根据权利要求27所述的***,其中,所述被配置为压缩所述存储器内容的逻辑还包括:被配置为将压缩的溢出内容写入所述溢出库的逻辑。
29.根据权利要求26所述的***,其中,所述DRAM压缩部件还包括:
被配置为在对压缩的内容进行解压缩时,存储用于识别待取回的第一块的压缩元数据的逻辑。
30.根据权利要求29所述的***,其中,所述被配置为禁用自刷新的逻辑包括:被配置为禁用一个或多个库片段或者所述多个库中的一个或多个库的自刷新的逻辑。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462082434P | 2014-11-20 | 2014-11-20 | |
US62/082,434 | 2014-11-20 | ||
US14/616,720 US9632562B2 (en) | 2014-11-20 | 2015-02-08 | Systems and methods for reducing volatile memory standby power in a portable computing device |
US14/616,720 | 2015-02-08 | ||
PCT/US2015/060740 WO2016081322A1 (en) | 2014-11-20 | 2015-11-13 | Systems and methods for reducing volatile memory standby power in a portable computing device |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107077189A true CN107077189A (zh) | 2017-08-18 |
Family
ID=56010866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580062723.7A Pending CN107077189A (zh) | 2014-11-20 | 2015-11-13 | 用于降低便携式计算设备中的易失性存储器待机功率的***和方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9632562B2 (zh) |
EP (1) | EP3221767A1 (zh) |
JP (1) | JP6276470B2 (zh) |
CN (1) | CN107077189A (zh) |
WO (1) | WO2016081322A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108536271A (zh) * | 2018-03-30 | 2018-09-14 | 青岛海信电器股份有限公司 | 一种降低功耗的方法、装置及存储介质 |
CN112748792A (zh) * | 2019-10-31 | 2021-05-04 | 福州瑞芯微电子股份有限公司 | 降低动态随机存储器的功耗的方法、***、介质及装置 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI602115B (zh) | 2016-06-23 | 2017-10-11 | 慧榮科技股份有限公司 | 資料儲存裝置之資料儲存方法 |
US20190065088A1 (en) * | 2017-08-30 | 2019-02-28 | Micron Technology, Inc. | Random access memory power savings |
US10162543B1 (en) * | 2017-12-15 | 2018-12-25 | Qualcomm Incorporated | System and method for power mode selection in a computing device |
KR20200006379A (ko) * | 2018-07-10 | 2020-01-20 | 에스케이하이닉스 주식회사 | 컨트롤러 및 그것의 동작방법 |
KR20200034499A (ko) * | 2018-09-21 | 2020-03-31 | 삼성전자주식회사 | 메모리 장치와 통신하는 데이터 처리 장치 및 방법 |
US20240094907A1 (en) * | 2022-07-27 | 2024-03-21 | Meta Platforms Technologies, Llc | Lossless compression of large data sets for systems on a chip |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101004724A (zh) * | 2006-01-18 | 2007-07-25 | 苹果电脑有限公司 | 用于闪速存储器的交错策略 |
CN100520682C (zh) * | 2006-06-08 | 2009-07-29 | 英特尔公司 | 通过存储器压缩提高降低的功率状态的移动计算***的电池寿命 |
CN102262593A (zh) * | 2010-05-25 | 2011-11-30 | 联发科技股份有限公司 | 数据搬移引擎和存储器控制方法 |
CN103562880A (zh) * | 2011-05-26 | 2014-02-05 | 索尼爱立信移动通讯有限公司 | 用于无线设备的优化休眠模式 |
US20140310552A1 (en) * | 2013-04-15 | 2014-10-16 | Advanced Micro Devices, Inc. | Reduced-power sleep state s3 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5524248A (en) | 1993-07-06 | 1996-06-04 | Dell Usa, L.P. | Random access memory power management system |
WO1996018940A1 (en) * | 1994-12-16 | 1996-06-20 | Elonex Technologies, Inc. | Management of data before zero volt suspend in computer power management |
JP3177207B2 (ja) | 1998-01-27 | 2001-06-18 | インターナショナル・ビジネス・マシーンズ・コーポレ−ション | リフレッシュ間隔制御装置及び方法、並びにコンピュータ |
US7054361B1 (en) | 2000-05-31 | 2006-05-30 | Thomson Licensing | Method and apparatus for enhancing an infrared signal protocol |
US6715024B1 (en) | 2001-12-31 | 2004-03-30 | Lsi Logic Corporation | Multi-bank memory device having a 1:1 state machine-to-memory bank ratio |
US20070180187A1 (en) | 2006-02-01 | 2007-08-02 | Keith Olson | Reducing power consumption by disabling refresh of unused portions of DRAM during periods of device inactivity |
US8504121B1 (en) | 2007-05-30 | 2013-08-06 | Marvell International Ltd. | Method and apparatus for reducing power consumption in a portable device |
US7757039B2 (en) * | 2007-09-18 | 2010-07-13 | Nikos Kaburlasos | DRAM selective self refresh |
JP2009104271A (ja) * | 2007-10-22 | 2009-05-14 | Nec Electronics Corp | オーディオデータ再生装置及びオーディオデータ再生方法 |
JP2009258925A (ja) * | 2008-04-15 | 2009-11-05 | Toshiba Corp | 計算機システムおよび計算機システムのメモリ管理方法 |
US8392736B2 (en) * | 2009-07-31 | 2013-03-05 | Hewlett-Packard Development Company, L.P. | Managing memory power usage |
US8589650B2 (en) * | 2010-05-17 | 2013-11-19 | Texas Instruments Incorporated | Dynamically configurable memory system |
KR101844346B1 (ko) | 2010-11-05 | 2018-04-02 | 삼성전자주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
US8694764B2 (en) | 2011-02-24 | 2014-04-08 | Microsoft Corporation | Multi-phase resume from hibernate |
JP6056491B2 (ja) * | 2013-01-15 | 2017-01-11 | 富士通株式会社 | データ保持装置、およびデータ保持方法 |
-
2015
- 2015-02-08 US US14/616,720 patent/US9632562B2/en active Active
- 2015-11-13 WO PCT/US2015/060740 patent/WO2016081322A1/en active Application Filing
- 2015-11-13 CN CN201580062723.7A patent/CN107077189A/zh active Pending
- 2015-11-13 EP EP15801602.2A patent/EP3221767A1/en not_active Withdrawn
- 2015-11-13 JP JP2017524365A patent/JP6276470B2/ja not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101004724A (zh) * | 2006-01-18 | 2007-07-25 | 苹果电脑有限公司 | 用于闪速存储器的交错策略 |
CN100520682C (zh) * | 2006-06-08 | 2009-07-29 | 英特尔公司 | 通过存储器压缩提高降低的功率状态的移动计算***的电池寿命 |
CN102262593A (zh) * | 2010-05-25 | 2011-11-30 | 联发科技股份有限公司 | 数据搬移引擎和存储器控制方法 |
CN103562880A (zh) * | 2011-05-26 | 2014-02-05 | 索尼爱立信移动通讯有限公司 | 用于无线设备的优化休眠模式 |
US20140310552A1 (en) * | 2013-04-15 | 2014-10-16 | Advanced Micro Devices, Inc. | Reduced-power sleep state s3 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108536271A (zh) * | 2018-03-30 | 2018-09-14 | 青岛海信电器股份有限公司 | 一种降低功耗的方法、装置及存储介质 |
CN112748792A (zh) * | 2019-10-31 | 2021-05-04 | 福州瑞芯微电子股份有限公司 | 降低动态随机存储器的功耗的方法、***、介质及装置 |
Also Published As
Publication number | Publication date |
---|---|
JP6276470B2 (ja) | 2018-02-07 |
US20160148670A1 (en) | 2016-05-26 |
US9632562B2 (en) | 2017-04-25 |
EP3221767A1 (en) | 2017-09-27 |
JP2018500639A (ja) | 2018-01-11 |
WO2016081322A1 (en) | 2016-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107077189A (zh) | 用于降低便携式计算设备中的易失性存储器待机功率的***和方法 | |
WO2022089452A1 (zh) | 内存管理方法、装置、电子设备以及计算机可读存储介质 | |
EP3514683A1 (en) | Memory collection method and terminal | |
CN103270488B (zh) | 用于改善平台的重新开始时间的方法和装置 | |
CN107533442A (zh) | 用于对异构***存储器中的存储器功率消耗进行优化的***和方法 | |
CN111149095B (zh) | 用于片上***中的图像帧的凹式压缩的***和方法 | |
US8725520B2 (en) | Power efficient batch-frame audio decoding apparatus, system and method | |
CN104769520B (zh) | 用于动态存储器功率管理的***和方法 | |
US20140310552A1 (en) | Reduced-power sleep state s3 | |
CN108701079A (zh) | 具有自适应预取的闪存读取高速缓存的***和方法 | |
CN102306048A (zh) | 用于零电压处理器休眠状态的方法和设备 | |
CN105556421B (zh) | 使用动态存储i/o调整大小来节约存储功率的***和方法 | |
CN108475235A (zh) | 利用dram程序高速缓存的非易失性随机存取***存储器 | |
CN104603834A (zh) | 用于多媒体数据处理的方法和*** | |
US10754785B2 (en) | Checkpointing for DRAM-less SSD | |
CN107077423A (zh) | 用于请求分页的高效解压缩局部性*** | |
CN107066068A (zh) | 存储装置及存储装置内低功耗存储器存取方法 | |
CN109416662A (zh) | 使用存储使用率环的选择性闪存压缩/解压缩 | |
CN108040292A (zh) | 电视待机开机方法、电视及计算机可读存储介质 | |
CN109661780A (zh) | 实现对基于处理器的***中的小数据块的高效无损压缩 | |
CN113590501A (zh) | 一种数据存储方法及相关设备 | |
CN101739359B (zh) | 存储装置、移动终端及数据访问方法、调频方法 | |
CN104115116A (zh) | 用于在休眠状态的装置中管理数据的***和方法 | |
US20230359355A1 (en) | Electronic device comprising heterogeneous memories and method for transferring compression data between heterogeneous memories thereof | |
CN107078746A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170818 |