CN101086680A - 通过存储器压缩提高降低的功率状态的移动计算系统的电池寿命 - Google Patents

通过存储器压缩提高降低的功率状态的移动计算系统的电池寿命 Download PDF

Info

Publication number
CN101086680A
CN101086680A CNA2007101103062A CN200710110306A CN101086680A CN 101086680 A CN101086680 A CN 101086680A CN A2007101103062 A CNA2007101103062 A CN A2007101103062A CN 200710110306 A CN200710110306 A CN 200710110306A CN 101086680 A CN101086680 A CN 101086680A
Authority
CN
China
Prior art keywords
compression
memory
data
indication
integrated circuit
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
Application number
CNA2007101103062A
Other languages
English (en)
Other versions
CN100520682C (zh
Inventor
S·巴拉孙德拉姆
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN101086680A publication Critical patent/CN101086680A/zh
Application granted granted Critical
Publication of CN100520682C publication Critical patent/CN100520682C/zh
Expired - Fee Related 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/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/14Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/14Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
    • G11C5/141Battery and back-up supplies
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion 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/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction

Abstract

本发明的实施例通常针对用于通过存储器压缩来提高移动计算系统的电池寿命的系统、方法和装置。在某些实施例中,集成电路包括压缩逻辑,用于不依赖于操作系统地压缩存储在存储器阵列中的数据的至少一部分。压缩逻辑可以响应于转移到降低的功率状态的指示而压缩数据。

Description

通过存储器压缩提高降低的功率状态的移动计算系统的电池寿命
本发明的实施例通常涉及集成电路的领域,更确切地说,涉及用于通过存储器压缩来提高处于降低的功率状态的移动计算系统的电池寿命的系统、方法和装置。
背景技术
移动计算系统利用电池提供电源。随着对电池能量的需求与日俱增,电池性能却还未跟上需求的步伐。降低计算系统的组件所消耗的功率是提高电池寿命的一种方式。
存储器设备(例如动态随机存取存储器(DRAM)设备)占计算系统所消耗的功率的很大一部分,尤其当计算系统处于降低的功率状态时。例如,根据降低的功率状态的特性以及所安装的存储器的数量,DRAM设备所消耗的功率可以占总的系统功率的将近50%。膝上型电脑的最低推荐存储器的所预计的提高,加上具有较高密度的下一代DRAM设备,将会增加系统存储器的功耗。
附图说明
在附图的各图中,以实例而非限制的方式说明本发明的实施例,其中相同的参考标号代表相似的元件。
图1是示出了根据本发明的实施例所实施的计算系统的所选方面的方框图;
图2是示出了根据本发明的可选实施例所实施的计算系统的所选方面的方框图;
图3是示出了根据本发明的实施例所实施的压缩逻辑的所选方面的方框图;
图4A和图4B分别示出了根据本发明的实施例的、存储器阵列内的数据被压缩之前和之后的存储器阵列的所选方面;
图5是示出了根据本发明的实施例的通过存储器压缩提高移动系统的电池寿命的方法的所选方面的流程图:
图6是示出根据本发明的实施例的电子系统的所选方面的方框图;
图7是示出根据本发明的可选实施例的电子系统的所选方面的方框图。
具体实施方式
本发明的实施例主要针对用于通过存储器压缩来提高移动计算系统的电池寿命的系统、方法和装置。在某些实施例中,在进入降低的功率状态之前,将系统的主存储器的内容压缩。在这种实施例中,只需要刷新主存储器中包含压缩数据的部分。存储器的剩余部分可以断开电源,这降低了所消耗的功率的量,从而延长了电池寿命。
图1是示出了根据本发明的实施例所实施的移动计算系统的所选方面的方框图。术语“移动计算系统”泛指例如膝上型电脑、掌上型电脑、图形输入板、手持设备、蜂窝电话、个人数字助理等。系统100包括处理器(多个处理器)102、存储器子系统110、永久性存储装置140,以及非易失性存储器150。在可选的实施例中,系统100可以包括更多、更少和/或不同的元件。
处理器102可以是任何种类的处理设备。例如,处理器102可以是微处理器、微控制器等。进一步地,处理器102可以包括任何数量的处理内核或者可以包括任何数量的单独的处理器。
存储器子系统110包括存储器控制器112和存储器模块118。存储器控制器112在图1所示的处理器(多个处理器)102和其它元件之间提供接口。存储器控制器112包括压缩逻辑114和输入/输出端口116。输入/输出(I/O)端口116可以包括接收器、发射器,以及用于与其它集成电路交换信息的相关电路。
在某些实施例中,压缩逻辑114包括用于压缩存储在存储器模块118中的数据的逻辑(例如压缩算法)。压缩逻辑114还可以包括用于将这些包含压缩数据(例如122)的存储器设备120选择性地转移到自刷新状态的逻辑。可以将剩余的存储器设备(例如除122以外的)的电源断开。由于处于自刷新状态的存储器设备的数量减少,所以系统所消耗的功率的量也相应地减少。术语“自刷新状态”泛指周期性地刷新存储器设备的单元的状态。下面参考图3进一步讨论压缩逻辑114的所选方面。
在某些实施例中,压缩逻辑114响应于转移到降低的功率状态的指示而压缩数据。例如,用户(或另一计算系统)可以启动整体的降低的功率状态(例如通过关闭膝上型电脑的盖子)。响应于该输入,处理器102将命令104发送给存储器控制器,以指示其转移到降低的功率状态。术语“降低的功率状态”泛指计算系统使用比其处于完全活动功率状态(active power state)更少的功率的任何功率状态。降低的功率状态的实例包括休眠、待机、软关机等。在某些实施例中,降低的功率状态是“挂起到随机存取存储器(RAM)”状态(有时称为S3状态)。下面参考图5进一步讨论对存储器中的数据的压缩。
永久性存储装置140为系统100提供对数据和代码的永久存储。永久性存储装置140可以包括磁盘或光盘和其相应的驱动器。如虚线所示,在某些可选实施例中,永久性存储装置140包括压缩软件142。压缩软件142可以补充和/或取代压缩逻辑114的某些方面。例如,在某些实施例中,压缩软件142可以为压缩逻辑114提供压缩算法。
非易失性存储器150对可以在例如系统启动和/或初始化过程期间使用的代码和/或数据提供非易失性存储。非易失性存储器1 50可以包括闪速存储器设备及其接口。在某些实施例中,非易失性存储器150包括配置数据152。配置数据152提供关于存储器模块118和/或存储器设备120的配置的信息。例如,配置数据152可以详细说明存储器模块的种类(例如x4、x8、x16),存储器设备的大小等。如下面进一步讨论的,压缩逻辑114可以访问配置数据152,以确定存储器子系统110的一个或多个方面的配置。
存储器模块118可以具有任意的多种结构和引脚配置。例如,可以将存储器模块118构建成双列直插存储器模块(DIMM)、小型DIMM(SO-DIMM)、微型DIMM等。可以利用具有几乎任何引脚配置(包括240引脚、144引脚、72引脚等等)的电接触连接器将存储器模块118耦合到互连124。
在可选实施例中,压缩逻辑114位于集成电路上而不是存储器控制器上。例如,压缩逻辑114可以位于芯片集中的单独的微控制器上。或者,压缩逻辑114可以位于存储器模块118上。图2是示出计算系统200的所选方面的方框图,在该计算系统200中压缩逻辑114B驻留在存储器模块118C上。
在某些实施例中,存储器模块118C包括缓冲器124。缓冲器124可以将相对高速的串行互连124C从用于与存储器设备120进行接口的相对较慢的互连分离。在某些实施例中,缓冲器124是高级存储缓冲器(AMB),其适于结合全缓冲双排直插存储器模块(FB-DIMM)技术使用。
缓冲器124包括压缩逻辑114B和I/O端口116B。在某些实施例中,压缩逻辑114B包括用于不依赖于操作系统地压缩存储在存储器设备120中的数据的逻辑。即,压缩逻辑114能够独立压缩数据,而不依赖于操作系统的存储管理器。在某些实施例中,压缩逻辑114响应于(至少部分响应于)转移到降低的功率状态的指示而压缩数据。例如,在所述实施例中,压缩逻辑114响应于来自处理器102的命令104B(例如“挂起到RAM”命令)而压缩数据。
图3是示出了根据本发明的实施例所实施的压缩逻辑的所选方面的方框图。压缩逻辑300包括控制逻辑302、读缓冲器304、压缩算法306、写缓冲器308、读指针310、写指针312,以及计时器314。在可选实施例中,压缩逻辑300可以包括更多元件、更少元件,和/或不同元件。在某些实施例中,将压缩逻辑300实现在计算系统的平台内的硬件和/或固件中(例如在存储器控制器上)。在可选实施例中,可以利用存储在永久性存储装置(例如图1中所示的永久性存储装置140)中的软件来执行压缩逻辑300的所选方面。在其它可选实施例中,压缩逻辑300可以驻留在存储器模块上。
在某些实施例中,控制逻辑302提供对压缩逻辑300的全局控制。例如,压缩逻辑302可以检测转移到低功率状态的指示(例如图1和图2所示的命令104)。其也可以控制从存储器中将数据读入读缓冲器304、压缩该数据,并从写缓冲器308将压缩数据写回到存储器的过程。读缓冲器304和写缓冲器308可以是任何的能够存储相对少量的数据的存储元件。压缩算法306可以是包括例如PKZIP压缩算法的许多压缩算法中的任何一种。
在某些实施例中,控制逻辑302使用读指针310指示要从存储器中读取的下一数据块的位置。类似地,控制逻辑302可以使用写指针312指示要将下一压缩数据块写入到存储器中的位置。下面参考图4A和图4B进一步讨论读指针310和写指针312。
在某些实施例中,当压缩逻辑300接收到系统转移到降低的功率状态的指示时,并不立即压缩存储在存储器中的数据。而是在启动压缩过程之前等待一个特定的时间段。启动压缩过程的延时防止了转换到降低的功率状态之后紧接着转换到活动功率状态的情况(例如关闭膝上型电脑的盖子,然后几乎立刻将其打开)。在该情况下,存在如下风险:即,与通过将某些存储器设备断电一个短的时间段所节约的电池能量相比,可能会使用更多的电池能量来压缩数据。通过在启动压缩过程之前等待特定长度的时间(例如几秒钟)降低了该风险,因为在经过足够的时间以表明设备要可靠地处于降低的功率状态相当长度的时间(例如数十秒、分钟、小时等)之前,并不使用电池能量来压缩数据。
在某些实施例中,压缩逻辑300使用计时器314以确定是否已经过去了特定长度的时间。计时器314可以是许多能够实现在集成电路中的计时器中的任何一种。在可选实施例中,压缩逻辑300可以使用不同的机制来确定是否已经过去了特定的时间。在其它可选实施例中,压缩逻辑300未等待特定长度的时间就启动压缩过程。
在某些实施例中,压缩逻辑300以成块方式压缩数据。即,压缩逻辑300读取具有特定块大小的数据块,将其压缩,将压缩的块写回到存储器,然后对下一数据块重复该过程,直到存储在存储器中的所有数据都被压缩。在某些实施例中,块大小为128字节。在可选实施例中,块大小可以是例如64字节、256字节或任何其它的适于支持所需压缩率的大小。
在某些实施例中,存在多条从存储器控制器到DIMM的通道,并且可以在两条通道同时进行压缩(例如以提高压缩速度)。例如,考虑一种实施例,其中膝上型电脑具有两条通道。在这种实施例中,系统可以具有用于每一通道的专用读/写缓冲器(例如304、308)。系统还可以具有用于每一通道的专用的压缩/解压缩控制器(例如302)。或者,系统可以具有一个为两条通道所共享的控制器。压缩逻辑可以与输入/输出(I/O)操作重叠。例如,当将压缩数据写出到通道2时,控制器可以为通道1压缩数据。
图4A和图4B是示出了根据本发明的实施例的以成块方式压缩数据的一个实例的概念图。在某些实施例中,压缩逻辑读取一个(例如具有特定的块大小的)数据块,压缩该数据以产生压缩的数据块,将压缩的数据块写入存储器,然后重复该过程,直到存储器中的所有数据都被压缩。存储器阵列402代表由单阵列中的存储器子系统所提供的存储器位置(例如从最低地址的存储器位置到最高地址的存储器位置)。在某些实施例中,压缩逻辑(例如图3中所示的压缩逻辑300)以具有特定块大小的块读出存储在存储器阵列402中的数据。在所述实施例中,块大小为128字节。在某些实施例中,读指针406指示要从存储器读取的下一数据块。
图4B示出了根据本发明的实施例的、压缩的数据块已被写入的存储器阵列的实例。存储器阵列404包括压缩的块410和412。如图4B中所示,由于压缩算法可以将某些数据压缩至比其他数据更大的程度,所以每一压缩的块可以具有不同的块大小。在某些实施例中,写指针414指示下一压缩的数据块要被写入存储器中的位置(和/或最后的压缩的数据块被写入存储器中的位置)。
图5是示出了根据本发明的实施例的、用于通过存储器压缩来提高移动计算系统的电池寿命的方法的所选方面的流程图。参考过程方框502,压缩逻辑接收转移到降低的功率状态的指示。“接收指示”的说法泛指,例如,直接或间接地接收到转移到降低的功率状态的命令、指令、信号,或者任何其它指示。例如,在某些实施例中,压缩逻辑接收到转移到“挂起到RAM”状态的命令。
参考过程方框504,压缩逻辑等待计时器计时结束。计时器的目的是提供延时,从而只有系统要可靠地处于降低的功率状态相当长一段时间(例如数十秒、分钟、小时等)时,才压缩存储器的内容。在某些实施例中,不等待计时器计时结束就运行压缩逻辑。参考过程方框506,压缩逻辑初始化读指针和/或写指针。
参考过程方框508,压缩逻辑从存储器中读出一个数据块。在某些实施例中,将数据从存储器读到读缓冲器(例如图3中所示的读缓冲器304)中。读指针可以前进块大小(例如64字节、128字节、256字节等)。在510压缩该数据块。在某些实施例中,利用硬件(例如在存储器控制器上)执行数据压缩,且不依赖于操作系统。在可选实施例中,可以利用存储在永久性存储装置中的软件来提供压缩算法。
参考过程方框512,压缩逻辑确定是否已发生负压缩。例如,压缩逻辑可以确定压缩的块的大小是否比未压缩的源块的大小更大。如果是,则将源块(例如未压缩的块)写回到存储器(514)。另外,写指针前进源块的大小(514)。
参考过程方框516,如果未发生负压缩,则将压缩的数据块从例如写缓冲器(例如图3中所示的写缓冲器308)写入到存储器。在某些实施例中,写指针前进压缩的块的大小。压缩逻辑在518确定是否已压缩了最后的数据块。确定是否已压缩了最后的数据块可以包括确定读指针是否已遍历存储器阵列(例如使用图1中所示的配置152)。
如果已压缩了最后的数据块,则压缩逻辑将存储器子系统转移到降低的功率状态(520)。例如,如果存储器设备包括压缩数据,则压缩逻辑将存储器设备转移到自刷新状态。如果该设备不包括压缩数据,则压缩逻辑可以使该设备不活动。因为许多存储器设备不活动,所以系统所消耗的电池能量的量降低。在某些实施例中,压缩逻辑例如使用写指针和存储器子系统的配置数据来确定哪些存储器设备包含压缩数据,哪些存储器设备不包含压缩数据。
对数据进行压缩之后,压缩逻辑可以实施解压缩阶段。解压缩阶段可以响应于转移到升高的功率状态的指示而出现。转移到升高的功率状态的指示可以包括用于从降低的功率状态转移出来的任何的信号、命令等。例如,在某些实施例中,转移到升高的功率状态的指示可以包括打开膝上型电脑的盖子。在某些实施例中,通过从压缩的数据块的末端反向操作来执行解压缩。
图6是示出了根据本发明的实施例的电子系统的所选方面的方框图。电子系统600包括处理器610、存储器控制器620、存储器630、输入/输出(I/O)控制器640、射频(RF)电路650,以及天线660。在操作中,系统600利用天线660发送和接收信号,并利用图6中所示的各种元件来处理这些信号。天线660可以是定向天线或全向天线。如这里所使用的,术语全向天线是指在至少一个平面内具有基本上均匀的方向图的任何天线。例如,在某些实施例中,天线660可以是诸如偶极子天线或四分之一波长天线等的全向天线。又例如,在某些实施例中,天线660可以是诸如抛物柱面反射器天线、贴片天线或八木天线等定向天线。在某些实施例中,天线660可以包括多个物理天线。
射频电路650与天线660和I/O控制器640通信。在某些实施例中,RF电路650包括符合通信协议的物理接口(PHY)。例如,RF电路650可以包括调制器、解调器、混频器、频率合成器、低噪声放大器、功率放大器等。在某些实施例中,RF电路650可以包括外差接收器,而在其它实施例中,RF电路650可以包括直接变换接收器。例如,在具有多个天线660的实施例中,可以将每个天线耦合到相应的接收器。在操作中,RF电路650接收来自天线660的通信信号,并向I/O控制器640提供模拟或数字信号。此外,I/O控制器640可以向RF电路650提供信号,RF电路650对信号进行操作,然后将其传送到天线660。
处理器(多个处理器)610可以是任何种类的处理设备。例如,处理器610可以是微处理器、微控制器等。此外,处理器610可以包括任意数量的处理内核,或者可以包括任意数量的单独的处理器。
存储器控制器620在图6示出的处理器610和其它元件之间提供通信路径。在某些实施例中,存储器控制器620是还提供其它功能的集线器设备的一部分。如图6所示,存储器控制器620耦合到处理器(多个处理器)610、I/O控制器640和存储器630。在某些实施例中,存储器控制器620包括压缩逻辑622。压缩逻辑622可以通过存储器压缩来提高系统600的电池寿命。
存储器630可以包括多个存储器设备。这些存储器设备可以基于任意种类的存储器技术。例如,存储器630可以是随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、诸如闪速存储器的非易失性存储器,或任何其它种类的存储器。
存储器630可以表示一个或多个模块上的单个存储器设备或许多存储器设备。存储器控制器620通过互连622向存储器630提供数据,并响应于读请求从存储器630接收数据。可以通过互连622或通过不同的互连(未示出)向存储器630提供命令和/或地址。存储器控制器630可以从处理器610或从另一来源接收要存储在存储器630中的数据。存储器控制器620可以向处理器610或向另一目的地提供其从存储器630接收的数据。互连622可以是双向互连或单向互连。互连622可以包括许多平行导线。信号可以是差分的或单端的。在某些实施例中,互连622使用前向、多相时钟方案进行操作。
存储器控制器620还耦合到I/O控制器640,并在处理器(多个处理器)610和I/O控制器640之间提供通信路径。I/O控制器640包括用于与诸如串行端口、并行端口、通用串行总线(USB)端口等的I/O电路进行通信的电路。如图6所示,I/O控制器640提供到RF电路650的通信路径。
图7是示出了根据本发明的可选实施例的电子系统的所选方面的方框图。电子系统700包括存储器630、I/O控制器640、RF电路650,以及天线660,其均参考图6在上面进行了描述。电子系统700还包括处理器(多个处理器)710和存储器控制器720。如图7所示,存储控制器720与处理器(多个处理器)710可以处于同一管芯上。在某些实施例中,存储器控制器720包括压缩逻辑722。压缩逻辑722可以通过存储器压缩来提高系统700的电池寿命。处理器(多个处理器)710可以是参考处理器610的如上所述的任何种类的处理器。图6和图7所代表的示例系统包括桌上型电脑、膝上型电脑、服务器、蜂窝电话、个人数字助理、数字家庭系统等。
还可以提供本发明的实施例的元件作为用于存储机器可执行指令的机器可读介质。机器可读介质可以包括但不限于闪速存储器、光盘、光盘只读存储器(CD-ROM)、数字多用/视频光盘(DVD)ROM、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁卡或光卡、传播介质或其它种类的适于存储电子命令的机器可读介质。例如,经由通信链路(例如调制解调器或网络连接),通过载波或其它传播介质中包含的数据信号的方式,可以将本发明的实施例作为可以从远程电脑(例如服务器)传送给发出请求的电脑(例如客户端)的电脑程序来进行下载。
应该理解,在整个说明书中的“一个实施例”或“实施例”表明,结合该实施例所描述的特定的特征、结构或特性包括在本发明的至少一个实施例中。因此,需要强调且应该理解的是,在该说明书的各个部分两次或多次引用“实施例”或“一个实施例”或“可选实施例”不一定都是指同一实施例。此外,可以将特定的特征、结构或特性适当地结合在本发明的一个或多个实施例中。
同样,应该理解,在上述的对本发明的实施例的描述中,为了简化帮助理解一个或多个不同的发明方面的公开的目的,有时将各种特征集合在一个实施例、附图或其描述中。然而,不应将该公开的方法理解为所权利要求的主体需要比在每一权利要求中所清楚地陈述的更多的特征的意图的反映。相反地,如所附权利要求所反映的那样,发明的方面比在上述的单个公开的实施例中的所有特征要少。因此,将该详细描述之后的权利要求清楚地并入该详细描述中。

Claims (23)

1、一种集成电路,包括:
输入/输出端口,其与易失性存储器进行接口;以及
与所述输入/输出端口耦合的压缩逻辑,所述压缩逻辑用于不依赖于操作系统地压缩易失性存储器的内容的至少一部分。
2、如权利要求1所述的集成电路,其中所述压缩逻辑用于响应于转移到降低的功率状态的指示,压缩易失性存储器中的所述内容的至少一部分。
3、如权利要求2所述的集成电路,其中所述转移到降低的功率状态的指示包括:
转移到“挂起到随机存取存储器(RAM)”状态的命令。
4、如权利要求2所述的集成电路,其中所述压缩逻辑还包括:
计时器,其用于在接收到所述转移到降低的功率状态的指示之后,指示何时经过了阈值时间段。
5、如权利要求2所述的集成电路,其中所述压缩逻辑还包括:
第一缓冲器,其用于存储从易失性存储器读取的数据块。
6、如权利要求5所述的集成电路,其中所述压缩逻辑还包括:
第二缓冲器,其用于存储要写入易失性存储器的压缩的数据块。
7、如权利要求2所述的集成电路,其中所述压缩逻辑包括为易失性存储器中的每一存储器设备分别设定功率状态的逻辑。
8、如权利要求2所述的集成电路,其中所述压缩逻辑还包括:
读指针,其用于指向未压缩的数据块;以及
写指针,其用于指向压缩的数据块。
9、如权利要求1所述的集成电路,其中所述集成电路包括存储器控制器。
10、一种方法,包括:
接收转移到降低的功率状态的指示;以及
响应于接收到所述转移到降低的功率状态的指示,压缩存储在存储器阵列中的数据的至少一部分。
11、如权利要求10所述的方法,其中接收转移到降低的功率状态的指示包括:
接收“挂起到随机存取存储器(RAM)”命令。
12、如权利要求10所述的方法,其中响应于接收到所述转移到降低的功率状态的指示,压缩存储在存储器阵列中的数据的至少一部分,包括:
不依赖于操作系统地压缩存储在所述存储器阵列中的数据的至少一部分。
13、如权利要求12所述的方法,还包括:
确定是否已经过去了阈值时间段。
14、如权利要求13所述的方法,其中压缩存储在所述存储器阵列中的数据的至少一部分包括:
如果已经过去了所述阈值时间段,则压缩存储在所述存储器阵列中的所述数据的至少一部分。
15、如权利要求12所述的方法,其中不依赖于操作系统地压缩存储在所述存储器阵列中的数据的至少一部分,包括:
从易失性存储器读取下一数据块;
压缩所述下一数据块,以产生压缩的数据块;以及
将所述压缩的数据块写入易失性存储器。
16、如权利要求10所述的方法,还包括:
在压缩了存储在所述存储器阵列中的所述数据的至少一部分之后,转移到降低的功率状态。
17、如权利要求10所述的方法,还包括:
接收转移到活动功率状态的指示;以及
响应于接收到所述转移到活动功率状态的指示,解压缩存储在所述存储器阵列中的压缩数据的至少一部分。
18、一种系统,包括:
一个或多个存储器设备,其用于提供存储器阵列;
与处理器耦合的集成电路,所述集成电路包括压缩逻辑,用于不依赖于操作系统地压缩存储在所述存储器阵列中的数据的至少一部分;
处理器,其与所述集成电路耦合;以及
天线,其与所述处理器耦合。
19、如权利要求18所述的系统,其中所述压缩逻辑至少部分地响应于来自所述处理器的转移到降低的功率状态的指示,压缩存储在所述存储器阵列中的所述数据的至少一部分。
20、如权利要求19所述的系统,其中所述转移到降低的功率状态的指示包括:
转移到“挂起到随机存取存储器(RAM)”状态的命令。
21、如权利要求19所述的系统,其中所述压缩逻辑还包括:
计时器,其用于在接收到所述转移到降低的功率状态的指示之后,指示何时经过了阈值时间段。
22、如权利要求19所述的系统,其中所述压缩逻辑还包括:
用于为所述存储器阵列中的每一存储器设备分别设定功率状态的逻辑。
23、如权利要求18所述的系统,其中所述集成电路包括:
存储器控制器。
CNB2007101103062A 2006-06-08 2007-06-08 通过存储器压缩提高降低的功率状态的移动计算系统的电池寿命 Expired - Fee Related CN100520682C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/450,214 2006-06-08
US11/450,214 US20070291571A1 (en) 2006-06-08 2006-06-08 Increasing the battery life of a mobile computing system in a reduced power state through memory compression

Publications (2)

Publication Number Publication Date
CN101086680A true CN101086680A (zh) 2007-12-12
CN100520682C CN100520682C (zh) 2009-07-29

Family

ID=38318848

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2007101103062A Expired - Fee Related CN100520682C (zh) 2006-06-08 2007-06-08 通过存储器压缩提高降低的功率状态的移动计算系统的电池寿命

Country Status (5)

Country Link
US (2) US20070291571A1 (zh)
CN (1) CN100520682C (zh)
DE (1) DE102007025948A1 (zh)
GB (1) GB2439428B (zh)
TW (1) TWI343519B (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102576245A (zh) * 2009-10-27 2012-07-11 诺基亚公司 非易失性设备
CN103246479A (zh) * 2012-02-06 2013-08-14 宏碁股份有限公司 记忆体管理方法及应用该方法的电子装置
CN103562880A (zh) * 2011-05-26 2014-02-05 索尼爱立信移动通讯有限公司 用于无线设备的优化休眠模式
US9146747B2 (en) 2013-08-08 2015-09-29 Linear Algebra Technologies Limited Apparatus, systems, and methods for providing configurable computational imaging pipeline
US9196017B2 (en) 2013-11-15 2015-11-24 Linear Algebra Technologies Limited Apparatus, systems, and methods for removing noise from an image
US9270872B2 (en) 2013-11-26 2016-02-23 Linear Algebra Technologies Limited Apparatus, systems, and methods for removing shading effect from image
US9727113B2 (en) 2013-08-08 2017-08-08 Linear Algebra Technologies Limited Low power computational imaging
US9842271B2 (en) 2013-05-23 2017-12-12 Linear Algebra Technologies Limited Corner detection
US9910675B2 (en) 2013-08-08 2018-03-06 Linear Algebra Technologies Limited Apparatus, systems, and methods for low power computational imaging
US10001993B2 (en) 2013-08-08 2018-06-19 Linear Algebra Technologies Limited Variable-length instruction buffer management
US10460704B2 (en) 2016-04-01 2019-10-29 Movidius Limited Systems and methods for head-mounted display adapted to human visual mechanism
US10949947B2 (en) 2017-12-29 2021-03-16 Intel Corporation Foveated image rendering for head-mounted display devices
CN112748792A (zh) * 2019-10-31 2021-05-04 福州瑞芯微电子股份有限公司 降低动态随机存储器的功耗的方法、系统、介质及装置
US11768689B2 (en) 2013-08-08 2023-09-26 Movidius Limited Apparatus, systems, and methods for low power computational imaging

Families Citing this family (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007132457A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Combined distortion estimation and error correction coding for memory devices
WO2007132456A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Memory device with adaptive capacity
WO2007132453A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Distortion estimation and cancellation in memory devices
US8694684B2 (en) * 2006-08-21 2014-04-08 Citrix Systems, Inc. Systems and methods of symmetric transport control protocol compression
US8060806B2 (en) 2006-08-27 2011-11-15 Anobit Technologies Ltd. Estimation of non-linear distortion in memory devices
WO2008053472A2 (en) 2006-10-30 2008-05-08 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
US7924648B2 (en) * 2006-11-28 2011-04-12 Anobit Technologies Ltd. Memory power and performance management
WO2008068747A2 (en) 2006-12-03 2008-06-12 Anobit Technologies Ltd. Automatic defect management in memory devices
US8151166B2 (en) 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
WO2008111058A2 (en) 2007-03-12 2008-09-18 Anobit Technologies Ltd. Adaptive estimation of memory cell read thresholds
US8001320B2 (en) 2007-04-22 2011-08-16 Anobit Technologies Ltd. Command interface for memory devices
US8234545B2 (en) 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
US8429493B2 (en) 2007-05-12 2013-04-23 Apple Inc. Memory device with internal signap processing unit
US7925936B1 (en) 2007-07-13 2011-04-12 Anobit Technologies Ltd. Memory device with non-uniform programming levels
US8259497B2 (en) 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US8174905B2 (en) 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
US8000141B1 (en) 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
WO2009050703A2 (en) 2007-10-19 2009-04-23 Anobit Technologies Data storage in analog memory cell arrays having erase failures
US8068360B2 (en) 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
WO2009063450A2 (en) 2007-11-13 2009-05-22 Anobit Technologies Optimized selection of memory units in multi-unit memory devices
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
US8209588B2 (en) 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US8456905B2 (en) * 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
US8085586B2 (en) 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8156398B2 (en) 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
US7924587B2 (en) 2008-02-21 2011-04-12 Anobit Technologies Ltd. Programming of analog memory cells using a single programming pulse per state transition
US8230300B2 (en) 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8059457B2 (en) 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US9772936B2 (en) 2008-07-10 2017-09-26 Micron Technology, Inc. Data collection and compression in a solid state storage device
US7924613B1 (en) 2008-08-05 2011-04-12 Anobit Technologies Ltd. Data storage in analog memory cells with protection against programming interruption
US7995388B1 (en) 2008-08-05 2011-08-09 Anobit Technologies Ltd. Data storage using modified voltages
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8000135B1 (en) 2008-09-14 2011-08-16 Anobit Technologies Ltd. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US8261159B1 (en) 2008-10-30 2012-09-04 Apple, Inc. Data scrambling schemes for memory devices
US8208304B2 (en) 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
US8248831B2 (en) 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US8397131B1 (en) 2008-12-31 2013-03-12 Apple Inc. Efficient readout schemes for analog memory cell devices
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
US8228701B2 (en) 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8832354B2 (en) 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8677203B1 (en) 2010-01-11 2014-03-18 Apple Inc. Redundant data storage schemes for multi-die memory systems
US8667191B2 (en) * 2010-01-15 2014-03-04 Kingston Technology Corporation Managing and indentifying multiple memory storage devices
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
US8533550B2 (en) * 2010-06-29 2013-09-10 Intel Corporation Method and system to improve the performance and/or reliability of a solid-state drive
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8645794B1 (en) 2010-07-31 2014-02-04 Apple Inc. Data storage in analog memory cells using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
WO2013048523A1 (en) * 2011-10-01 2013-04-04 Intel Corporation Fast platform hibernation and resumption for computing systems
TWI493563B (zh) * 2012-01-06 2015-07-21 Acer Inc 記憶體管理方法及應用該方法之電子裝置
US9323317B2 (en) * 2012-12-12 2016-04-26 International Business Machines Corporation System and methods for DIMM-targeted power saving for hypervisor systems
US9454214B2 (en) * 2013-03-12 2016-09-27 Intel Corporation Memory state management for electronic device
US20140310552A1 (en) * 2013-04-15 2014-10-16 Advanced Micro Devices, Inc. Reduced-power sleep state s3
US9632562B2 (en) 2014-11-20 2017-04-25 Qualcomm Incorporated Systems and methods for reducing volatile memory standby power in a portable computing device
US20160246715A1 (en) * 2015-02-23 2016-08-25 Advanced Micro Devices, Inc. Memory module with volatile and non-volatile storage arrays
US10303235B2 (en) * 2015-03-04 2019-05-28 Qualcomm Incorporated Systems and methods for implementing power collapse in a memory
US10372888B2 (en) * 2016-12-14 2019-08-06 Google Llc Peripheral mode for convertible laptops
US20190065088A1 (en) * 2017-08-30 2019-02-28 Micron Technology, Inc. Random access memory power savings
KR20200034499A (ko) * 2018-09-21 2020-03-31 삼성전자주식회사 메모리 장치와 통신하는 데이터 처리 장치 및 방법
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04223510A (ja) * 1990-12-26 1992-08-13 Canon Inc 情報処理装置
US5524248A (en) * 1993-07-06 1996-06-04 Dell Usa, L.P. Random access memory power management system
JPH07160595A (ja) * 1993-12-06 1995-06-23 Yamatake Honeywell Co Ltd 揮発性メモリのデータ保持方法およびその装置
WO1996018940A1 (en) * 1994-12-16 1996-06-20 Elonex Technologies, Inc. Management of data before zero volt suspend in computer power management
TW413771B (en) * 1994-12-27 2000-12-01 Cyrix Corp Image regeneration compression system, the computer containing the same, and the image regeneration method
DE19629130A1 (de) * 1996-07-19 1998-05-14 Philips Patentverwaltung Signalprozessor
JPH10116138A (ja) * 1996-10-14 1998-05-06 Casio Electron Mfg Co Ltd メモリへの電源供給制御装置
JPH11282587A (ja) * 1998-03-26 1999-10-15 Canon Inc メモリーバックアップ装置
US6195024B1 (en) * 1998-12-11 2001-02-27 Realtime Data, Llc Content independent data compression method and system
US20010054131A1 (en) * 1999-01-29 2001-12-20 Alvarez Manuel J. System and method for perfoming scalable embedded parallel data compression
US6334123B1 (en) * 1999-09-03 2001-12-25 Whamtech, Inc. Index relational processor
US6416410B1 (en) * 1999-12-03 2002-07-09 Nintendo Co., Ltd. Data compression/decompression based on pattern and symbol run length encoding for use in a portable handheld video game system
US6519733B1 (en) * 2000-02-23 2003-02-11 International Business Machines Corporation Method and apparatus for high integrity hardware memory compression
JP4131779B2 (ja) * 2001-01-25 2008-08-13 株式会社東芝 ディジタル保護制御装置
US7058829B2 (en) * 2002-08-14 2006-06-06 Intel Corporation Method and apparatus for a computing system having an active sleep mode CPU that uses the cache of a normal active mode CPU
DE10343525B4 (de) * 2002-09-27 2011-06-16 Qimonda Ag Verfahren zum Betreiben von Halbleiterbausteinen, Steuervorrichtung für Halbleiterbausteine und Anordnung zum Betreiben von Speicherbausteinen

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102576245B (zh) * 2009-10-27 2014-12-10 诺基亚公司 非易失性设备
CN102576245A (zh) * 2009-10-27 2012-07-11 诺基亚公司 非易失性设备
CN103562880A (zh) * 2011-05-26 2014-02-05 索尼爱立信移动通讯有限公司 用于无线设备的优化休眠模式
CN103246479A (zh) * 2012-02-06 2013-08-14 宏碁股份有限公司 记忆体管理方法及应用该方法的电子装置
US9842271B2 (en) 2013-05-23 2017-12-12 Linear Algebra Technologies Limited Corner detection
US11605212B2 (en) 2013-05-23 2023-03-14 Movidius Limited Corner detection
US11062165B2 (en) 2013-05-23 2021-07-13 Movidius Limited Corner detection
US11042382B2 (en) 2013-08-08 2021-06-22 Movidius Limited Apparatus, systems, and methods for providing computational imaging pipeline
US11188343B2 (en) 2013-08-08 2021-11-30 Movidius Limited Apparatus, systems, and methods for low power computational imaging
US9910675B2 (en) 2013-08-08 2018-03-06 Linear Algebra Technologies Limited Apparatus, systems, and methods for low power computational imaging
US9934043B2 (en) 2013-08-08 2018-04-03 Linear Algebra Technologies Limited Apparatus, systems, and methods for providing computational imaging pipeline
US10001993B2 (en) 2013-08-08 2018-06-19 Linear Algebra Technologies Limited Variable-length instruction buffer management
US10360040B2 (en) 2013-08-08 2019-07-23 Movidius, LTD. Apparatus, systems, and methods for providing computational imaging pipeline
US11768689B2 (en) 2013-08-08 2023-09-26 Movidius Limited Apparatus, systems, and methods for low power computational imaging
US10521238B2 (en) 2013-08-08 2019-12-31 Movidius Limited Apparatus, systems, and methods for low power computational imaging
US10572252B2 (en) 2013-08-08 2020-02-25 Movidius Limited Variable-length instruction buffer management
US9146747B2 (en) 2013-08-08 2015-09-29 Linear Algebra Technologies Limited Apparatus, systems, and methods for providing configurable computational imaging pipeline
US11579872B2 (en) 2013-08-08 2023-02-14 Movidius Limited Variable-length instruction buffer management
US11567780B2 (en) 2013-08-08 2023-01-31 Movidius Limited Apparatus, systems, and methods for providing computational imaging pipeline
US9727113B2 (en) 2013-08-08 2017-08-08 Linear Algebra Technologies Limited Low power computational imaging
US9196017B2 (en) 2013-11-15 2015-11-24 Linear Algebra Technologies Limited Apparatus, systems, and methods for removing noise from an image
US9270872B2 (en) 2013-11-26 2016-02-23 Linear Algebra Technologies Limited Apparatus, systems, and methods for removing shading effect from image
US10460704B2 (en) 2016-04-01 2019-10-29 Movidius Limited Systems and methods for head-mounted display adapted to human visual mechanism
US10949947B2 (en) 2017-12-29 2021-03-16 Intel Corporation Foveated image rendering for head-mounted display devices
US11682106B2 (en) 2017-12-29 2023-06-20 Intel Corporation Foveated image rendering for head-mounted display devices
CN112748792A (zh) * 2019-10-31 2021-05-04 福州瑞芯微电子股份有限公司 降低动态随机存储器的功耗的方法、系统、介质及装置

Also Published As

Publication number Publication date
TWI343519B (en) 2011-06-11
GB2439428B (en) 2010-10-06
CN100520682C (zh) 2009-07-29
US20070291571A1 (en) 2007-12-20
GB0710876D0 (en) 2007-07-18
DE102007025948A1 (de) 2008-01-03
GB2439428A (en) 2007-12-27
US20140089711A1 (en) 2014-03-27
TW200813700A (en) 2008-03-16

Similar Documents

Publication Publication Date Title
CN100520682C (zh) 通过存储器压缩提高降低的功率状态的移动计算系统的电池寿命
CN100576338C (zh) 用于存储设备热感器的动态功率控制的系统、设备和方法
US20200401333A1 (en) Power down mode for universal flash storage (ufs)
US10892001B2 (en) Protocol for refresh between a memory controller and a memory device
KR101576236B1 (ko) Ddr dram 쓰기들을 하는 동안에 사용되지 않는 데이터 바이트들을 삼상태로 만들기 위한 방법, 시스템 및 장치
CN109964213B (zh) 在基于处理器的系统中提供经扩展动态随机存取存储器突发长度
US9208837B2 (en) Apparatus and method for data movement
KR20010095472A (ko) 휴대용 데이터 저장 장치
EP3931830B1 (en) Enhanced data clock operations in memory
JP4588427B2 (ja) メモリシステムおよびホストとメモリカードとの間のデータ伝送速度設定方法
EP1248267A2 (en) Semiconductor memory device and information processing system
CN112578895A (zh) 降低非易失性存储器中的由于待机泄漏电流引起的功耗
US7321980B2 (en) Software power control of circuit modules in a shared and distributed DMA system
EP4160380A1 (en) Data read-write method, and hybrid memory
KR20180102268A (ko) 메모리 모듈 및 이를 포함하는 메모리 시스템
CN202067260U (zh) 一种减少数据传输的缓存系统
CN102110065B (zh) 一种减少数据传输的缓存系统
WO2021242316A1 (en) Shaped and optimized power cycles
US20040128577A1 (en) Add-in module providing always-on connectivity for mobile personal computer
US20080192559A1 (en) Bank interleaving compound commands
US9311105B2 (en) Communicating operating system booting information
US20050270892A1 (en) Synchronous memory device with reduced power consumption
CN216901481U (zh) 基于ft2000-4 cpu的工控主板
US20230266891A1 (en) Sleep control method and sleep control circuit
JPH0728712A (ja) 記憶装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090729

Termination date: 20190608