休眠状态下的存储器功率降低的制作方法

文档序号:6359417阅读:153来源:国知局
专利名称:休眠状态下的存储器功率降低的制作方法
技术领域
本文描述的多种实施方式涉及数据处理系统的功率管理。本领域已知多种技术来降低数据处理系统中的功耗,尤其是电池供电的设备或系统中的功耗。
背景技术
在某些数据处理系统中常采用休眠状态来降低功耗。在休眠状态下,设备的显示 器可以关闭(例如,液晶显示器(LCD)的背光关闭),并且硬驱或其他非易失性存储设备关闭(例如,硬驱的一个或多个盘不在自旋),诸如微处理器的处理系统处于可以是关闭的低功率状态中,但是诸如DRAM的数据处理系统的易失性存储器是全功率供电的。休眠状态可以保存功率,同时,由于DRAM在接收功率,所以可以快速地从休眠状态唤醒。从休眠状态快速唤醒是用户所期望的有利特性,用户希望能够在数据处理器系统休眠之后返回到对其的使用,而同时能够从休眠状态提供的功率降低状态受益。这种休眠状态的一个例子是服从ACPI系统中的S3状态。ACPI (高级配置和电力接口)是开放标准,其定义功率管理过程,并允许对采用操作系统的数据处理系统的功率管理的操作系统控制。ACPI标准还描述了其他低功耗状态,例如功耗小于S3状态的S4和S5状态。在S4状态(也称为休止(hibernation)状态)中,主存储器的所有内容(例如,DRAM内容)被保存到诸如硬驱的非易失性存储器设备,并被掉电。S5状态被认为是停机(shutdown)状态,用户从该状态利用来自存储操作系统的硬驱或其他非易失性存储器的引导处理来重启系统。通常,当接收到指示设备上的电源按钮已经被按下的信号时,系统可以仅从S4状态或S5状态返回。如本领域公知的,整个引导处理会花费较长时间。

发明内容
描述了用于实施在休眠状态下的功率降低的系统、机器可读存储介质以及方法的示例性实施方式。在一个实施方式中的系统可以包括诸如DRAM的易失性存储器、至少一个数据输入外围设备以及逻辑电路,该逻辑电路配置为针对数据处理系统的休眠状态管理该数据存储系统的功耗。逻辑电路可以耦接到易失性存储器,并且可以被配置为响应于在休眠状态下发生的事件而给易失性存储器断电,但是依然保持在所述事件之前存在的休眠状态下。在一个实施方式中,事件可以是响应于进入到休眠状态而启动的定时器或计数器的到期。休眠状态可以是在事件之前的服从ACPI的S3休眠状态,并且诸如DRAM的易失性存储器可以在S3休眠状态期间的用户无动作时段之后响应于事件而断电。在给DRAM断电之后系统可以保持在S3休眠状态中。在事件之前和事件之后,系统可以响应于来自诸如键盘或触摸屏或鼠标的数据输入外围设备的输入,使得系统从休眠状态退出。
在一个实施方式中,易失性存储器可以是需要刷新以保持其中数据的动态随机存取存储器(DRAM),该DRAM可以采用自刷新方法来允许在存储器管理单元(MMU)中实现功率降低,同时系统处于休眠状态。在特定实施方式中,除了或代替定时器或计数器的到期,事件还可以由用户输入触发。在一个实施方式中,系统可以包括诸如LED (发光二极管)的休眠指示器,其向用户指示系统正处于休眠状态,例如本文所描述的S3休眠状态。在一种实现中,休眠指示器可以缓慢地闪烁,以向用户指示系统正处于休眠状态,而在其他状态(例如,SO或S5)中,休眠指示器关闭并且不闪烁。在一个实施方式中,一种方法可以包括进入休眠状态,在该休眠状态中,数据处理系统的易失性存储器接收功率,并且处理器被断电或者以其他方式处于功率降低的状 态;以及确定在休眠状态期间发生了事件(例如,定时器到期),并且响应于事件(在特定实施方式中,响应于确定其他状况),从易失性存储器移除功率但仍保持在休眠状态中。在本方法中数据处理系统可以被配置为,响应于来自诸如鼠标、键盘或触摸屏的数据输入外围设备的输入而从休眠状态退出。在一个实施方式中,该方法还可以包括当数据处理系统处于休眠状态时,使得休眠指示器指示休眠状况。该方法还可以包括在进入休眠状态之前或在给DRAM断电之前,将RAM中的数据存储到诸如硬驱或固态盘的非易失性存储器中。在一个实施方式中,根据本发明的一种系统能够至少在以下服从ACPI的状态下工作S0 ;S3和S5。在一个实施方式中,在S3休眠状态下定时器或计数器的到期发生在用户相对于数据输入外围设备中的一个或多个无动作时段之后。在一种实现中,定时器的到期可以发生在用户相对于耦接到数据处理系统的多个数据输入外围设备中的全部(或其所选子集)无动作时段之后。


在附图中通过例子而非限制的方式例示了本发明,附图中类似的附图标记指代类似的元件。图I是示出根据本发明一个实施方式的方法的流程图。图2是根据本发明一个实施方式的系统的框图。图3是示出根据本发明一个实施方式的系统的部分的框图。图4是根据本发明一个实施方式的系统的部分的另选实施方式的框图。图5是示出根据本发明一个实施方式的方法的流程图。
具体实施例方式参照下面讨论的细节将描述本发明的多种实施方式和方面,附图将例示多种实施方式。下面的描述和附图是对本发明的例示,而不应被解释为限制本发明。描述了众多特定细节来提供对本发明多种实施方式的透彻理解。然而,在特定情况下,没有描述众所周知或常规的细节,以提供对本发明实施方式的简要讨论。本文中所称“一个实施方式”是指关于该实施方式描述的特定特征、结构或特性可以包括在本发明的至少一个实施方式中。本文中多处出现的术语“在一个实施方式中”不必然全部指同一实施方式。附图中描述的处理由包括硬件(例如,电路、专用逻辑器等)、软件或两者的组合的处理逻辑器执行。尽管下面关于某些顺序操作描述了处理,但是应当理解,所描述的一些操作可以按照不同的顺序来执行。此外,可以并行地而非顺序地执行一些操作。在一个实施方式中,数据处理系统可以进入诸如休眠状态的低功率状态,在该状态中易失性存储器接收功率,然后在发生事件时,提供给易失性存储器的功率响应于事件而被移除或降低,但是系统仍保持在低功率或休眠状态下。图I示出了根据本发明一个实施方式的方法。在操作101中,系统正常操作。在典型实现中,这将包括提供全功率给微处理器、给硬驱、给DRAM、给数据输入外围设备(例如,提供数据给诸如鼠标、触摸屏或键盘的处理器的外围设备)以及给显示器设备。在一种实现中,这可以代表数据处理系统的SOACPI工作状态。另选地,工作状态可以是本领域公知的SI或S2ACPI状态。操作系统可以以多种方式中的任一种转换到休眠状态。例如,用户可以设置或者系统可以设置使得发生特定功率降低的定时器。功率降低可以从SO转换到SI,或者从SO转换到S2状态,或者从SO转换到SI并然后转换到S2然后转换到S3状态。针对这些转换中的每一个可能有单独的定时器,系统可以利用其他定时器,例如显示器定时器等,其在用户时段之后使得显示器变暗。图I所示的操作103示出了系统已经转换到休眠状态,该休眠状态可以是S3状态,并 且响应于该转换,系统已经启动定时器或计数器,在一个实施方式中,该定时器或计数器用于确定是否移除或者以其他方式降低给诸如DDR DRAM易失性存储的易失性存储器的功率;该定时器或计数器可以称为DRAM定时器或计数器,用以与使得从操作101 (例如,SO状态)转换到休眠状态的定时器(其可以称为休眠定时器)相区分。操作103中所示的进入休眠状态可以通过定时器(其可以不同于DRAM定时器)到期来发生,或者通过接收指示系统进入休眠状态的用户命令来发生。通常,休眠定时器(其不同于DRAM定时器)可以通过用户动作来复位,但是如果对于休眠定时器计数的时间段没有用户动作,那么在操作103中休眠定时器可以到期并且使得进入到休眠状态。可选择地,系统可以使得将DRAM或其他易失性存储器的内容存储到非易失性储存设备(例如,硬驱、闪存等)。至少在特定实施方式中,该数据从DRAM保存到非易失性存储器可以在操作103中或者在操作109中执行。在操作103中进入休眠状态之后,系统通常将定期执行操作105和107,以在操作105的情况下确定是否从休眠唤醒,或者在操作107的情况下确定是否给易失性存储器断电。在操作105中,系统可以确定是否接收到使得从休眠唤醒的输入。在休眠状态中,多个潜在唤醒源(例如,外围设备)保持被供电,并且能够提供输入以使得从休眠唤醒。在一个实施方式中,输入可以是由耦接到数据处理系统的多个外围设备中的任一个来提供,或者在另一实施方式中由数据处理系统的那些外围设备的子集中的任一个来提供。例如,在膝上型计算机系统的一个实施方式中,对键盘的输入或对鼠标的输入可以使得系统从休眠唤醒,而对膝上型计算机上的集成触摸板或鼠标的输入将不会使得系统从休眠唤醒。如果接收到输入,则操作105返回到操作101,如图I所示。在特定实施方式中,从操作105返回到操作101可以包括,检查诸如图3所示的寄存器313的寄存器,来确定DRAM是否已被断电。进一步,在至少特定实施方式中,从操作105返回到操作101还包括从存储在诸如DRAM存储器的易失性存储器中的数据恢复微处理器中的状态信息。如果在操作105中确定没有接收到输入,则处理进行到操作107,在操作107中确定在操作103中启动的定时器是否已到期。如果没有,则处理循环返回到再次执行操作105。如果定时器已经到期,则在一个实施方式中处理进行到操作109。尽管图I所示的实施方式采用定时器的到期来确定易失性存储器是否应被断电,但是应当理解,在其他实施方式中,可以(针对定时器另选地或另外地)采用诸如用户命令(例如,键盘上的特定组按键)的其他事件来使得系统给易失性存储器断电。应当理解,可以采用定时器或计数器来确定是否给易失性存储器断电。定时器可以计数或计时实际的时间段,而计数器可以从某一值向下计数到零,或者按照某一其他方式与时间 无关地进行计数。在特定实施方式中,当定时器(DRAM定时器)到期以及满足另一状况时,从易失性存储器移除功率。该另一状况可以例如通过如下软件来确定,该软件检测应用程序的状态(例如,打开或停止)或者数据输入操作的状态(例如,在最前窗口中的保存对话框或打开对话框),或者这种状态和操作的组合,并且确定是否或者何时从易失性存储器移除功率,即使定时器已经到期。下面将参照图5来描述属于该另一状况的特定实施方式。当在操作107中确定定时器或计数器已经到期(并且假设不需其他状况来进行到操作09)时,该方法进行到操作109,在操作109中给易失性存储器的功率完全被关断或者很大程度上降低。在一个实施方式中,这包括从DDR DRAM完全移除功率。然而,该系统仍保持在操作103中进入到的相同的休眠状态中,例如S3休眠状态。在一个实施方式中,在操作109中在给易失性存储器断电之后,系统将具有与正常S3休眠状态中的系统相同的可观察行为。例如,诸如数据处理系统上的LED的可选休眠指示器可以指示在操作103中进入休眠状态之后和在操作109之后所指示的休眠状态。另外,一个或多个唤醒源(例如,诸如鼠标、触摸板、键盘等的外围设备)保持被供电,并且能够提供使得从休眠中唤醒的输入。唤醒源可以以多种方式(例如,通过USB、以太网、蓝牙或其他方式)连接到数据处理系统。唤醒源没有像在S4或S5状态(其中唤醒源被断电,并且系统通常仅响应于电源按钮按压)中被断电。在特定实施方式中,有多个唤醒源能够提供使得从休眠状态中唤醒的输入。操作111在操作109之后,确定是否已接收到使得从休眠唤醒的输入。如果没有接收到输入,则处理重复执行操作111,直到接收到使得从休眠唤醒的输入。该输入可以来自耦接到数据处理系统的多个外围设备中的任一个,或者来自仅这些外围设备中的子集。如果在操作111确定已经接收到使得从休眠中唤醒的输入,则在至少特定实施方式中,系统将执行若干操作,以允许系统返回到操作101。在一个实施方式中,在从操作111返回到操作103中的这些操作包括从寄存器读取值,该值规定易失性存储器是被供电还是断电的状态(例如,如下进一步描述的读取寄存器313中的数据的值),然后如果已经从易失性存储器移除功率(B卩,它被断电),则重新初始化并复位易失性存储器,然后从非易失性存储器恢复在操作103中进入休眠状态时存在的易失性存储器的状态。在一个实施方式中,DRAM的恢复从硬驱或闪存中的DRAM的图像发生,该图像是如上所述的在操作103或109中保存的。然后在从非易失性存储器恢复DRAM之后,诸如处理器状态等的系统状态是从DRAM或易失性存储器恢复的,然后处理可以进行到在操作101中正常操作。下面将结合例如在图2和图3等中示出的若干实施方式进一步描述图I所示的前述方法。图2是可以与本文所描述的任一实施方式一起使用的数据处理系统的一个示例。该数据处理系统可以代表通用计算机系统或专用计算机系统。它可以代表手持式计算机或个人数字助理或移动电话、便携式游戏系统、便携式媒体播放器、或者可以包括移动电话或移动媒体播放器或游戏系统的平板式或手持式计算设备,或者网络计算机或在另一设备或任何消费者电子设备内的嵌入式处理设备。该系统可以包括如下多个数据输入外围设备中的任一个或组合,所述数据输入外围设备例如包括键盘、鼠标、触摸屏、触摸板、USB端口,或者诸如DVD或CD驱动器的储存设备驱动器。图2所示的数据处理系统201可以包括通过一个或多个总线207耦接到彼此的一个或多个处理器203和一个或多个图形处理单元(GPU)204。处理器可以是常规微处理器,例如来自Intel的微处理器,或者专用处理器,例如通过ASIC (专用集成电路)生成的处理器。图形处理单元204可以是常规图形处理单元,例如可从NVIDIA获得的GPU。 系统201还可以包括具有存储器管理单元的芯片集。芯片集205可以是常规的芯片集,或者修改以包括实施本文所描述的一个或多个方法的功率管理器的芯片集。处理器203、GPU 204以及芯片集205可以在一个集成电路内或者在若干集成电路中实现。数据处理系统201还包括易失性存储器,该易失性存储器可以是需要刷新以保持存储器内的数据的DRAM。易失性存储器206通过一个或多个总线207耦接到芯片集205、GPU204和处理器203。应当理解,系统201的体系架构并非旨在代表任何特定体系架构或者互连部件的方式,因为这些细节与本发明没有密切关系,并且总线207可以包括一个或多个本领域公知的总线和总线桥、控制器和/或适配器。在一个实施方式,处理器203检索存储在诸如易失性存储器206或非易失性存储器208或这些存储器的组合的机器可读存储介质中的计算机程序指令,并且执行这些指令以实现本文描述的操作。功率管理器211和芯片集205还可以包括用以存储被执行以实现本文描述的操作的指令的存储器。非易失性存储器208可以是硬驱或闪存或相变存储器(PCM)或其他类型的存储器,其中在从形成非易失性存储器208的存储器设备移除功率之后数据和指令被保持。系统201还包括显示器控制器209,显示器控制器209用于控制本领域公知的一个或多个显示器设备210。显示器控制器209可以通过总线207耦接到系统的其他部分,或者在其他实施方式中直接耦接到图形处理单元204。系统201还包括一个或多个输入/输出(I/O)控制器213,I/O控制器213耦接到一个或多个输入/输出设备214,例如触摸屏或触摸板或鼠标、或者键盘或USB端口或网络接口控制器(有线或无线或两者)或这些数据输入外围设备的组合。最后,系统201包括功率管理器211,功率管理器211可以是根据本发明的一个或多个实施方式的配置为执行功率管理操作的微处理器或ASIC。功率管理器可以通过一个或多个总线207耦接为与芯片集205和系统中的其他部件进行通信。功率管理器211还可以包括休眠指示器,该休眠指示器可以是一个或多个LED,用以指示系统处于休眠状态,如本文所描述的。休眠指示器212在本实施例中直接耦接到功率管理器,而在其他实施方式中可以通过输入/输出控制器耦接,输入/输出控制器继而在一个实施方式中由功率管理器控制或管理,或者在另一实施方式中由芯片集205控制或管理,如本文所描述的。如在本公开的一个或多个实施方式中所描述的,系统201可以包括I/O控制器213与功率管理器211之间的可选连接,以允许功率管理器监控来自数据输入外围设备的输入,从而确定是否从休眠唤醒系统。在其他实施方式中,输入/输出控制器213可以通过芯片集205而非通过可选连接215与诸如功率管理器211的功率管理器通信。在特定实施方式中,输入/输出设备214可以包括无线收发器,例如蓝牙收发器、WiFi收发器、红外、蜂窝式电话收发器,等等。此外,输入/输出设备214可以包括网络接口,例如以太网接口或其他网络接口。还应当理解,本发明的数据处理系统可以具有比图2所示的更少或更多的部件。还应当理解,一个或多个处理器、芯片集、图形处理单元的耦接一般是通过一个或多个总线和桥(也称为总线控制器)进行的,如本领域所公知的。图3以框图形式代表一个实施方式的更具体示例,其中诸如功率管理器211的功率管理器可以与芯片集逻辑器结合地执行本文所描述的功率降低操作以及本文所描述的方法中的一个或多个。在一个实施方式中,系统301可以是系统201的一部分,并且包括如图3所示耦接的芯片集逻辑器303、功率管理器305、DRAM 307以及DRAM电压调节器309。芯片集逻辑器303可以包括用于管理诸如DRAM 307的易失性存储器的存储器管理逻辑器或单元。芯片集逻辑器303还可以包括其他常规逻辑器,例如胶合逻辑器(glue logic),用于互连一个或多个处理器、I/O控制器以及系统中的其他部件,如本领域所公知的。系统301还可以包括休眠指示器,在本例中休眠指示器是耦接到功率管理器305的LED 311,功率管理器305控制LED以使其指示休眠状态,例如S3休眠状态,如图I所示。根据一个实施方式,功率管理器305还包括一个或多个寄存器313,这一个或多个寄存器313允许功率管理器存储指示DRAM 307的功率的状态的值。寄存器313可以 用以存储DRAM的开/关状态,其在接收到使得系统从休眠中唤醒的输入时可以由芯片集逻辑器通过线路331读取。这已经在上面关于图I中描述的判决块105和判决块111中的“是”分支进行了描述。在一个实施方式中,BIOS可以使得芯片集通过线路331读取指示DRAM的状态和唤醒状态的数据,以确定DRAM是否已经被断电并由此在试图存储DRAM中的值或数据之前需要对DRAM重新初始化和复位。在一个实施方式中,对已经断电的DRAM的重新初始化和复位可以在相对于标准重新初始化和复位的缩短时段中执行。总线315可以是将芯片集逻辑器303耦接至Ij DRAM 307以控制DRAM的常规控制总线。此外,取决于芯片集和DRAM 307的实施方式,总线315可以包括地址和数据线。芯片集303可以通过功率信号线317指示系统的功率状态,例如SO状态、S3状态或S5状态。这将向功率管理器305通知系统的状态,并且功率管理器可以响应于来自芯片集逻辑器303的功率信号线317相应地操作以设置功率状态。功率管理器305还包括控制栅极控制信号319的输出,栅极控制信号319耦接到控制晶体管(FET) 321的栅极,控制晶体管321对DRAM 307供电。具体地,FET 321可以用于接通和关断给DRAM 307的供电。FET 321的一个电极耦接到来自DRAM电压调节器309的电压输出,在FET321由施加给栅极控制信号319的信号而导通时电压输出323提供电压给DRAM 307的电压输入325。功率管理器305控制栅极控制信号的电压,并由此控制是否给DRAM 307供电。芯片集逻辑器303具有提供电压使能信号327的输出,电压使能信号327被接收到电压调节器309上的使能输入329。当芯片集逻辑器通过电压使能信号327来使能DRAM电压调节器时,DRAM电压调节器309可以通过控制FET321提供给DRAM 307供电所必需的电压。功率管理器303可以包括在操作103中启动的定时器或计数器(例如,DRAM定时器),该定时器或计数器在操作107中用来确定它是否已经到期。然后,在操作109中由功率管理器305利用该定时器或计数器的到期,来使得DRAM307被断电,如以上在操作109中所描述的。功率管理器305和芯片集逻辑器303可以一起执行各种操作来实现图I所示的方法。下面将关于图I所示的方法来描述系统301的操作。当包括系统301的数据处理系统正工作在正常状态(例如,在操作101中的SO状态)下时,芯片集逻辑器303和DRAM307被全功率供电,并执行它们正常的功能,功率管理器305在寄存器313中存储指示DRAM具有全功率的值。功率管理器305还使得LED 311指示正常工作状态而非休眠状态。芯片集逻辑器303将功率信号线317设置为对功率管理器305指定SO或其他正常工作状态,芯片集逻辑器303使得DRAM电压调节器309能够通过FET 321给DRAM 307提供工作电压。在某一点,如上所述,系统可以进入休眠状态,芯片集逻辑器303可以通过改变功率信号线317上的值来指示功率管理器305进入休眠状态。继而,如在操作103中,功率管理器305可以启动定时器或计数器(例如,DRAM定时器),以确定是否以及何时给DRAM 307断电。在休眠状态期间,功率管理器和/或芯片集逻辑器303可以监视来自如本文所描述的数据输入外围设备的输入,以在以上所述的操作105中确定是否从休眠唤醒。除了这些外围设备,功率管理器或芯片集逻辑器还可以监视诸如铰链、按钮盖、盖开关或加速计的外壳控件,以确定是否从休眠状态将系统唤醒。在该时段期间,DRAM 307仍然具有功率,因为来自功率管理器305的栅极控制信号319继续允许通过FET 321将功率提供给DRAM 307。功率管理器305可以包括在操作103启动的定时器或计数器,用以确定何时给易失性存储器(在本例中为DRAM 307)断电。当如在操作107中确定定时器或计数器到期时(假设不需要满足其他状况,例如软件确定的状况),功率管理器305可以允许系统保持在同样的休眠状态中,只是通过如下来给易失性存储器断电改变栅极控制信号319以使FET 321截止,FET 321继而关断给DRAM 307的供电。在该休眠状态时芯片集逻辑器303仍然可以给DRAM电压调节器309 的使能输入329提供电压使能信号327,或者在另选实施方式中,DRAM电压调节器309还可以直接通过芯片集逻辑器303或者通过来自功率管理器305的信号被断电,以使得当DRAM307在诸如S3状态的休眠状态中被断电时DRAM电压调节器309被断电。功率管理器305在给DRAM 307断电时还可以使休眠指示器311 (在本例中为LED)指示系统处于休眠状态。在一个实施方式中,LED 311显示在图I的操作103中开始的休眠状态,并且在图I的操作105、107和109和111中都保持在该状况下。功率管理器305在给DRAM 307断电时还在寄存器313中存储指示给DRAM 307的功率被关断的值,并且在接收到使得系统从休眠唤醒的输入时使用该寄存器,以重新初始化和复位被断电的DRAM 307,如本文所描述的。功率管理器305或芯片集逻辑器303或者功率管理器305和芯片集逻辑器303的一部分的组合在操作111期间可以监视从一个或多个数据输入外围设备接收到的一个或多个输入(以及可选地监视其他部件,例如像铰链、按钮盖、盖开关或加速计的一个或多个外壳机电控件,以及内部微控制器(例如,具有存在检测的照相机等)),以确定是否使得系统从休眠中唤醒。如果接收到这种输入,则功率管理器305使得LED 311停止指示休眠状态,并例如通过提供栅极控制信号来导通FET 321由此给DRAM 307供电来重新初始化和复位DRAM 307。如果电压使能327先前被禁用,则将其使能以允许DRAM电压调节器309提供DRAM 307正常工作所需的功率。芯片集逻辑器303可以从寄存器313读取数据,以确定在休眠状态期间DRAM307是否被断电。如果没有被断电,则无需对DRAM 307重新初始化和复位。然后系统从包含在休眠之前的DRAM 307中的数据的图像的非易失性存储器恢复DRAM 307中的数据,并且系统从DRAM 307恢复系统状态。图4示出了另选实施方式的集成在一起的芯片集和功率管理逻辑器;换言之,功率管理器407内嵌在芯片集逻辑器401内,芯片集逻辑器401可以与图2所示的芯片集逻辑器205相同。在这种情况下,无需单独的功率管理器211。除了功率管理器407之外,芯片集逻辑器401还可以包括存储器管理单元和其他的逻辑器,例如用于将系统的各个部件耦接到一起以及用于控制系统的一个或多个总线的胶合逻辑器。芯片集逻辑器401可以通过控制总线415耦接到DRAM 405。DRAM 405对应于图2的易失性存储器206,并且通过FET413从DRAM电压调节器403接收功率,FET 413由从GPIO 409接收信号的栅极控制线411来控制,在一个实施方式中,GPIO 409是芯片集逻辑器401上的通用输入/输出连接。当栅极控制线411导通FET 413时,DRAM电压调节器403的电压输出417通过FET 413提供DRAM 105所必需的工作电压到DRAM 405的电压输入419。在休眠状态中,例如操作103中的休眠状态S3,驱动GPIO 409的GPIO逻辑器将处于保持在S3状态下供电的功率域中,并且类似地,功率管理器407在S3状态期间还将保持供电。对GPIO 409的控制可以由功率管理器407执行,或者可以通过由诸如图2的处理器203的系统处理器执行的指令来控制。如果GPIO 409由处理器控制,则系统必须简单地返回到SO状态,使得控制器和芯片集被供电到足以允许处理器执行切换GPIO所需的指令,从而允许在退出休眠状态时给DRAM供电或者在进入休眠状态时移除功率。需要注意,在这种情况下,系统可能在SO状态下的较短时间段内失去对DRAM的访问,因此逻辑器或软件应确保在GPIO 409已经切换为使存储器掉电之后不尝试去访问DRAM。在特定实施方式中,诸如图2所示的系统的数据处理系统可以进入低功率或休眠状态并且移除或减少给易失性存储器的功率,同时保持在休眠状态下。根据处理系统进入 休眠状态的状况,可以智能地从易失性存储器移除功率。图5示出了根据本发明一个实施方式的用于进入休眠状态并智能地移除易失性存储器的功率的方法。在操作501中,发生休眠状态事件。休眠状态事件可以使得系统进入休眠状态,该休眠状态例如可以是S3状态。系统可以按照多种方式进入休眠状态,包括休眠定时器的到期或者通过接收指示系统进入休眠状态的用户命令(例如,按钮按压)。在操作503中,系统分析休眠状态事件来确定是否已经有效地进入休眠状态。如果满足特定状况,系统确定用户希望系统进入休眠状态。这些状况可以包括按钮按压、特定按键序列、关闭盖子、移除电源线或者其他形式的用户与系统的输入或交互。如果系统确定休眠状态事件指示已经有效地进入休眠状态,则在一个实施方式中,在操作519处,系统进入休眠状态并给易失性存储器断电。给易失性存储器的功率可以完全地被关断或者减少,如上所述。易失性存储器可以在系统进入休眠状态同时或在其短时间段之后被断电。如果系统在操作503处确定没有有效地进入休眠状态(例如,如上关于图I所讨论的休眠定时器或计数器到期),则在操作505处,系统确定是否休眠状态事件应调整DRAM定时器或计数器的超时值。可以确定从缺省值调整超时值的多个状况。特定状况可以使得超时值增加,由此使得在易失性存储器(例如,DRAM)被断电之前经过更多时间,而其他状况可以使得超时值减小。这些状况例如可以包括系统中加速计或运动传感器的状态、电池电荷水平、接近传感器的状态、在系统上运行的应用程序的状态、数据输入操作的状态,或者这些状态和/或其他状态、操作或状况的任意组合。在一个实施方式中,如果加速计或运动传感器检测到数据处理系统的移动,则可以确定用户短时间内不打算使用该系统,并且在操作509处超时值减小,使得易失性存储器在没有使得从休眠中唤醒的输入的情况下很快被断电。其他可以使得超时值减小的状况包括电池电荷水平降到特定阈值以下、所有在系统上运行的应用程序关闭或退出、或者接近传感器检测到没有用户在处理系统附近。可以使得在操作509处超时值增加由此使得在易失性存储器被断电之前的时间段较长的状况包括,当休眠状态事件发生时一个或多个应用程序当前正在打开或运行、对话框(例如,保存对话框或打开对话框)正打开在最前窗口、接近传感器检测到用户正处在系统的特定距离内或者其他状况。如果不存在将调整超时值的状况,则在操作507处缺省超时值可以被编程到定时器或计数器中。在操作511中,系统利用在操作507或509处确定的值来启动定时器或计数器,并且使得系统进入休眠状态(例如,S3状态)。在休眠状态中,数据处理系统的诸如处理器203的处理器被断电。然而,一个或多个唤醒源在休眠状态期间保持被供电。唤醒源例如可以包括经由USB、以太网连接或者蓝牙设备连接的外围设备,例如鼠标或键盘。在操作513处监控这些唤醒源的可以使得系统在操作515处从休眠状态唤醒并返回到正常工作状态(例如,SO状态)的输入。如果在从唤醒源接收到输入信号之前在操作517处DRAM定时器已经到期(并且如果不需要其他状况(例如,软件状态)来给易失性存储器断电),则易失性存储器被断电并且系统仍然保持在休眠状态中。可以进一步延迟或防止给易失性存储器断电的其他状况可以包括保存或打开对话框是最前窗口或者本文所描述的其他状况。尽管给易失性存储器的功率可以被移除或减小,但是数据处理系统中或附接到数据处理系统的各种唤醒源保持被供电。因此,如果在操作521处从唤醒源接收到输入,则即使在操作519处易失性存储器被断电之后,系统还可以返回到正常工作状态。在系统处于休眠状态时唤醒源可以持续地被监视,并且易失性存储器已经被断电,直到接收到使得系统从休眠状态唤醒的 输入。在上述说明中,已经关于本发明的特定示例性实施方式对本发明进行了描述。显然,可以对其进行各种修改,而不偏离如在所附权利要求中阐述的本发明的更广的精神和范围。因此,应在例示性的意义上而非在限制性的意义上来看待说明书和附图。
权利要求
1.一种数据处理系统,包括 易失性存储器; 至少一个数据输入外围设备; 逻辑电路,该逻辑电路配置为管理所述数据处理系统的功耗以保持所述数据处理系统的休眠状态,该逻辑电路耦接到所述易失性存储器和所述至少一个数据输入外围设备,该逻辑电路被配置为,响应于来自所述数据输入外围设备的输入,使得所述数据处理系统从所述休眠状态退出,并且该逻辑电路配置为,响应于在所述休眠状态期间发生的事件而给所述易失性存储器断电,并使得所述数据处理系统依然保持在所述休眠状态中。
2.如权利要求I所述的数据处理系统,其中,所述事件使得所述数据处理系统一进入所述休眠状态就移除给所述易失性存储器的功率,所述事件包括按钮按压、按键序列输入、关闭处理设备的盖子以及移除电源线中的一个。
3.如权利要求I所述的数据处理系统,其中,所述事件是响应于进入所述休眠状态而开始的定时器的到期。
4.如权利要求3所述的数据处理系统,其中,当进入所述休眠状态时基于所述数据处理系统的状况而调整所述定时器的超时值,所述状况包括以下之一加速计或运动传感器的状态、电池电荷水平、接近传感器的状态、在所述数据处理系统上运行的应用程序的状态以及应用程序中的数据输入操作的状态。
5.如权利要求I所述的数据处理系统,其中,所述易失性存储器是动态随机存取存储器(DRAM),该DRAM需要刷新来保持该DRAM中的数据,并且所述至少一个数据输入外围设备是以下之一 (a)鼠标;(b)触摸板;(c)触摸屏;(d)键盘;(e) USB端口;(f)存储设备驱动器;(g)网络接口控制器,其中在给所述易失性存储器的功率被关断之后所述至少一个数据输入外围设备保持被供电,并且所述至少一个数据输入外围设备耦接到输入控制器以提供数据给耦接到所述易失性存储器的至少一个处理器,并且所述数据处理系统包括将所述至少一个处理器耦接到所述易失性存储器的总线,并且所述逻辑电路配置为响应于来自外壳机电控件的信号使得所述数据处理系统从所述休眠状态退出。
6.如权利要求5所述的数据处理系统,其中,所述休眠状态是在所述事件之前的S3服从高级配置和电力接口(ACPI)的状态,并且所述数据处理系统还包括 休眠指示器,其耦接到所述逻辑电路,当所述数据处理系统处于所述S3服从ACPI的状态时该休眠指示器指示所述数据处理系统处于所述休眠状态;以及 所述逻辑电路配置为响应于从所述休眠状态退出而返回供电给所述易失性存储器。
7.如权利要求6所述的数据处理系统,还包括 非易失性存储器,其耦接到所述至少一个处理器,该至少一个处理器配置为使得在进入所述休眠状态之前将所述DRAM中的数据存储到所述非易失性存储器中,并且所述至少一个处理器和非易失性存储器在所述休眠状态期间处于断电状态。
8.如权利要求7所述的数据处理系统,其中,所述数据处理系统能够工作在至少以下服从ACPI的状态下S0、S3和S5,其中在没有从所述至少一个数据输入外围设备接收到输入的时段之后发生定时器或计数器的到期,并且所述定时器是响应于进入所述休眠状态而开始的,所述至少一个数据输入外围设备提供在所述数据处理系统达到SO状态之后由该数据处理系统使用的用户数据。
9.一种数据处理系统的机器实现方法,该方法包括 确定所述数据处理系统已经进入休眠状态,在该休眠状态中,所述数据处理系统的易失性存储器接收功率并且该数据处理系统的处理器被断电,其中所述数据处理系统被配置为响应于来自数据输入外围设备的输入而从所述休眠状态退出; 确定在所述数据处理系统处于所述休眠状态中时发生了事件;以及 响应于所述事件移除对所述易失性存储器的功率,并且使得所述数据处理系统保持在所述休眠状态中。
10.如权利要求9所述的方法,其中,所述事件使得所述数据处理系统一进入所述休眠状态就从所述易失性存储器移除功率,所述事件包括按钮按压、按键序列输入、关闭处理设备的盖子以及移除电源线中的一个。
11.如权利要求9所述的方法,其中,所述事件是响应于进入所述休眠状态而开始的定 时器的到期。
12.如权利要求11所述的方法,其中,当进入所述休眠状态时基于所述数据处理系统的状况而调整所述定时器的超时值,所述状况包括以下之一加速计或运动传感器的状态、电池电荷水平、接近传感器的状态、在所述数据处理系统上运行的应用程序的状态以及应用程序中的数据输入操作的状态。
13.如权利要求9所述的方法,还包括 使得休眠指示器在所述数据处理系统处于所述休眠状态中时指示休眠状况;以及 其中,所述数据输入外围设备是以下之一 (a)鼠标;(b)触摸板;(C)触摸屏;(d)键盘;(e) USB端口或(f)存储设备驱动器,其中在从所述易失性存储器移除功率之后所述数据输入外围设备保持被供电;以及 其中,所述易失性存储器是随机存取存储器(RAM),该RAM需要刷新来保持该RAM中的数据。
14.如权利要求13所述的方法,其中,所述休眠状态是在所述事件之前的S3服从高级配置和电力接口(ACPI)的状态,并且所述休眠指示器在所述事件之后指示所述休眠状态。
15.如权利要求14所述的方法,还包括 在进入所述休眠状态之前将所述RAM中的数据存储到非易失性存储器中;并且 其中,所述数据处理系统包括至少一个处理器,并且所述至少一个处理器和非易失性存储器在所述休眠状态期间处于断电状态。
16.如权利要求15所述的方法,其中,所述数据处理系统能够工作在至少以下服从ACPI的状态下S0、S3和S5,其中在用户相对于所述数据输入外围设备无动作的时段之后发生定时器的到期。
17.如权利要求16所述的方法,其中,所述数据处理系统包括多个数据输入外围设备,并且在用户相对于所有所述多个数据输入外围设备无动作的时段之后发生定时器的到期。
18.一种机器可读存储介质,用于存储在执行时使得数据处理系统执行以下操作的指令 确定所述数据处理系统已经进入休眠状态,在该休眠状态中,所述数据处理系统的易失性存储器接收功率并且该数据处理系统的处理器被断电,其中所述数据处理系统被配置为响应于来自数据输入外围设备的输入而从所述休眠状态退出;确定在所述数据处理系统处于所述休眠状态中时发生了事件;以及 响应于所述事件移除对所述易失性存储器的功率,并且使得所述数据处理系统保持在所述休眠状态中。
19.如权利要求18所述的机器可读存储介质,其中,所述事件使得所述数据处理系统一进入所述休眠状态就从所述易失性存储器移除功率,所述事件包括按钮按压、按键序列输入、关闭处理设备的盖子以及移除电源线中的一个。
20.如权利要求18所述的机器可读存储介质,其中,所述事件是响应于进入所述休眠状态而开始的定时器的到期。
21.如权利要求20所述的机器可读存储介质,其中,当进入所述休眠状态时基于所述数据处理系统的状况而调整所述定时器的超时值,所述状况包括以下之一加速计或运动传感器的状态、电池电荷水平、接近传感器的状态、在所述数据处理系统上运行的应用程序的状态以及应用程序中的数据输入操作的状态。
22.如权利要求18所述的机器可读存储介质,其中所述指令还使得所述数据处理系统执行以下操作 使得休眠指示器在所述数据处理系统处于所述休眠状态中时指示休眠状况;以及 其中,所述数据输入外围设备是以下之一 Ca)鼠标;(b)触摸板;(c)触摸屏;(d)键盘;(e) USB端口或(f)存储设备驱动器,其中在从所述易失性存储器移除功率之后所述数据输入外围设备保持被供电;以及 其中,所述易失性存储器是随机存取存储器(RAM),该RAM需要刷新来保持该RAM中的数据。
23.如权利要求22所述的机器可读存储介质,其中,在用户相对于所述数据输入外围设备无动作的时段之后发生定时器的到期。
全文摘要
一种采用休眠状态的存储器功率降低的数据处理系统。该系统可以包括易失性存储器和至少一个数据输入外围设备以及逻辑电路。该逻辑电路配置为管理所述数据处理系统的功耗用于所述系统的休眠。该逻辑电路可以耦接到所述易失性存储器,并且可以配置为响应于在所述休眠状态期间发生的事件而给所述易失性存储器断电,但仍然保持在所述休眠状态中。该休眠状态可以是服从ACPI的S3休眠状态,在S3休眠状态期间诸如DRAM的易失性存储器在用户无动作时段之后被断电。
文档编号G06F1/32GK102725709SQ201180007628
公开日2012年10月10日 申请日期2011年1月26日 优先权日2010年1月28日
发明者D·卡蒂, D·艾瓦莫托, K·考克斯, R·施米迪特, S·J·斯法尔佐 申请人:苹果公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1