CN107077184A - 具有快速恢复的系统待机仿真 - Google Patents

具有快速恢复的系统待机仿真 Download PDF

Info

Publication number
CN107077184A
CN107077184A CN201580027615.6A CN201580027615A CN107077184A CN 107077184 A CN107077184 A CN 107077184A CN 201580027615 A CN201580027615 A CN 201580027615A CN 107077184 A CN107077184 A CN 107077184A
Authority
CN
China
Prior art keywords
processor
power
intermediateness
sleep state
perform
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
CN201580027615.6A
Other languages
English (en)
Other versions
CN107077184B (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 CN107077184A publication Critical patent/CN107077184A/zh
Application granted granted Critical
Publication of CN107077184B publication Critical patent/CN107077184B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake
    • 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/3243Power saving in microcontroller unit
    • 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/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • 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/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • 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
    • 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
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Sources (AREA)

Abstract

系统和方法可以规定响应于使处理器转变到睡眠状态中的操作系统(OS)请求而接取对处理器的控制并且使处理器转变到中间状态中,所述中间状态具有比睡眠状态更短的唤醒等待时间。另外,可以使处理器维持在中间状态中直到检测到唤醒事件为止。在一个示例中,响应于唤醒事件可以反转一个或多个功率降低操作。

Description

具有快速恢复的系统待机仿真
对相关申请的交叉引用
本申请对2014年6月27日提交的申请号为14/317,628的美国非临时专利申请要求优先权的权益。
技术领域
实施例一般地涉及计算系统中的功率管理。更具体地,实施例涉及仿真(emulate)系统待机以实现更快速的恢复时间。
背景技术
计算系统、诸如笔记本计算机和平板计算机可以在空闲时段期间从活动状态转变到睡眠状态中以便保存功率。例如,为了触发系统待机,操作系统(OS)可以经由在高级配置和功率接口(ACPI,例如ACPI规范,Rev. 5.0a,2011年12月6日)规范中所定义的接口来调用S3睡眠状态,其中S3状态可以涉及减低计算系统功率消耗(power down)并且依赖于闪速存储器中运行的基本输入/输出系统(BIOS)代码来配置计算系统,作为响应于唤醒事件而到活动状态的总体恢复流的部分。然而,S3睡眠状态的唤醒等待时间可能阻止通过计算系统实现“即时启动”功能性。虽然可以为计算系统开发具有较短唤醒等待时间状态的其它低功率状态,但是OS可能仍被配置成仅仅以传统的且相对不灵活的ACPI睡眠状态而工作。
附图说明
通过阅读随后的说明书和所附的权利要求并且通过参考随后的附图,实施例的各种优点对于本领域技术人员而言将变得显而易见,在所述附图中:
图1是根据实施例的处理器中的状态转变的示例的框图;
图2是根据实施例的操作BIOS的方法的示例的流程图;
图3A和3B是根据实施例的使处理器转变/进入到中间状态中的方法的示例的流程图;
图4是根据实施例的BIOS装置的示例的框图;
图5是根据实施例的处理器的示例的框图;以及
图6是根据实施例的计算系统的示例的框图。
具体实施方式
现在转到图1,示出了处理器10(例如中央处理单元/CPU、输入/输出模块、芯片组),其中处理器10运行操作系统(OS)12,诸如例如ANDROID(开放式手持机联盟)、IOS(APPLE公司)、LINUX(Linux基金会)、或WINDOWS(MICROSOFT公司)操作系统。处理器10可以被并入到多种多样的计算系统中,诸如例如服务器、工作站、台式计算机、笔记本计算机、平板计算机、可转换平板设备、智能电话、个人数字助理/PDA、移动因特网设备(MID)、媒体播放器、可穿戴计算机等等。
在所图示的示例中,在时间t0处,OS 12处于活动模式中并且经由箭头11生成请求14以使处理器10转变到睡眠状态中,诸如例如ACPI S3或S1睡眠状态。可以通过例如向启用(enablement)寄存器(例如SLP_EN寄存器)写入来生成请求14,其中逻辑架构16可以经由箭头17来检测和/或拦截对启用寄存器的写入。如将更详细讨论的,逻辑架构16可以以逻辑指令、可配置逻辑、固定功能性硬件逻辑等等、或其任何组合的形式被实现为基本输入/输出系统(BIOS)。
在所图示的时间t1处,逻辑架构16经由箭头13来控制处理器10,以便经由箭头15使处理器10转变到中间状态中,而不是将处理器10置于所请求的睡眠状态中,所述中间状态与所请求的状态相比具有较短的唤醒等待时间。例如,中间状态可以是ACPI S0工作状态,其中附加的功率降低操作由逻辑架构16执行以便实现更大的功率节约。事实上,中间状态可以导致相对于所请求的睡眠状态的更低功率消耗,而同时提供向活动状态的几近即时的返回(例如即时启动功能性)。此外,逻辑架构16可以仿真OS 12所预期的标准系统待机操作。结果,所说明的途径从用户体验的立场以及功率消耗和电池寿命的立场可以是有利的,而同时OS 12不可知(agnostic to)状态偏移。
现在转到图2,示出了操作BIOS的方法20。方法20可以以被存储在机器或计算机可读存储介质(诸如随机存取存储器(RAM)、只读存储器(ROM)、可编程ROM(PROM)、固件、闪速存储器等等)中的逻辑指令集、以可配置逻辑(诸如例如可编程逻辑阵列(PLA)、现场可编程门阵列(FPGA)、复杂可编程逻辑设备(CPLD))、以使用电路技术(诸如例如专用集成电路(ASIC)、互补金属氧化物半导体(CMOS)或晶体管-晶体管逻辑(TTL)技术)的固定功能性硬件逻辑、或其任何组合而被实现为模块或有关组件。例如,用以实施方法20中所示操作的计算机程序代码可以以一种或多种编程语言的任何组合来被编写,所述编程语言包括面向对象的编程语言、诸如Java、Smalltalk、C++、ACPI源语言(ASL)等等,以及常规过程性编程语言、诸如“C”编程语言或类似的编程语言。
所图示的处理块22规定响应于使处理器转变到睡眠状态中的OS请求而接取(assume)对处理器的控制。处理器可以在块24处被转变到中间状态中,所述中间状态具有比睡眠状态更短的唤醒等待时间并且具有类似或更好的电池寿命。如已经指出的,所请求的睡眠状态可以例如是ACPI S3或S1睡眠状态。
更具体地,图3A展示了方法26,所述方法26提供一种途径来在所请求的睡眠状态是S3状态时使处理器转变到中间状态中。所图示的方法26因此可以容易地代替已经讨论过的块24(图2)。通常,对于S3状态请求,OS可能预期从干净的处理器状态(例如“实模式”)中恢复。因此,BIOS可以将处理器从当前OS上下文改变回到干净(clean)的状态。更具体地,在所图示的块28处,处理器模式复原到已知状态(例如,独立于OS所留下的处理器状态),其中所述复原可以清除处理器的上下文,如做出转变请求的OS所预期的那样。清除处理器的状态因此可以确保随后将控制切换回到OS将无缝地发生。另外,可以在块30处执行一个或多个处理器恢复操作。处理器恢复操作可以包括例如在进行复原之后从非易失性存储器中还原存储器控制器配置数据等等。所图示的块32执行一个或多个处理器功率降低操作,所述处理器功率降低操作可以涉及例如功率轨修改、增强的时钟门控、主动空闲操作等等,以便在处理器处于中间状态时降低处理器的功率消耗。
在另一示例中,图3B展示了方法34,所述方法34提供了在所请求的睡眠状态是较浅的S1状态时使处理器转变到中间状态中的途径。所图示的方法34因此可以容易地代替已经讨论过的块24(图2)。通常,对于S1状态请求,OS可能预期在下一指令中恢复。因此,在这种情况下可以进行功率节约工作而不改变OS留下的处理器上下文。更具体地,在所图示的块36处执行一个或多个设备功率降低操作。设备功率降低操作可以包括例如指示系统组件(诸如显示器、键区等等的嵌入式控制器(EC))进入其最低功率状态。另外,在块38处可以执行一个或多个处理器功率降低操作(例如功率轨修改、增强的时钟门控、主动空闲操作)。
现在返回到图2,所图示的块40使处理器维持在中间状态中,其中可以在块42处做出关于是否已经发生唤醒事件的确定。唤醒事件可以包括例如计算系统的用户按压/激活上电按钮(例如硬按钮或软按钮)、检测到传入的消息(例如文本消息、电子邮件、社交联网发帖等等)等等。如果没有检测到唤醒事件,则所图示的方法20通过返回到块40而继续使处理器维持在中间状态中。如果检测到唤醒事件,则块44可以可选地反转(reverse)一个或多个功率降低操作(例如,如果所请求的睡眠状态是S1睡眠状态的话),其中所反转的功率降低操作可以是处理器功率降低操作、设备降低操作等等、或其任何组合。另外,对处理器的控制可以在块46处可选地被转移到OS(例如,如果所请求的睡眠状态是S3睡眠状态的话)。
特别注意的是,在块42处检测到唤醒事件与在块46处转移控制之间的时间量可以显著小于从S3或S1睡眠状态中恢复工作状态中的正常操作的时间量。例如,在S3睡眠状态转变请求的示例中,当初始由OS请求系统待机时,块28和30处(图3A)的处理器重置和恢复操作分别可以被预先处置。此外,块46可以可替换地在块44之后或与块44并行进行,以进一步减少唤醒等待时间。另外,在所图示的示例中可以绕过BIOS重认证,因为当处理器处于中间状态中时,BIOS不可以在潜在不能信任的闪速存储器中运行。事实上,在所图示的示例中的中间状态仅仅是从OS的视角来仿真系统待机的工作/空闲状态。
图4示出了可以用于仿真系统待机的BIOS装置48(48a-48e)。BIOS装置48通常可以实现方法20(图2)的一个或多个方面并且可以容易地代替已经讨论过的逻辑架构16(图1)。因而,BIOS装置48可以以逻辑指令、可配置逻辑、固定功能性硬件逻辑等等、或其任何组合来被实现。在一个示例中,BIOS装置48从系统存储器中操作,而不是如当从S3睡眠状态中恢复时可能是的情况那样从潜在不受保护的闪速存储器中操作。
在所图示的示例中,拦截器48a响应于使处理器转变到睡眠状态、诸如ACPI S3状态或S1状态中的OS请求而接取对处理器的控制。在一个示例中,拦截器48a包括系统管理中断/SMI处置机,用以检测OS对启用寄存器的写入。另外,转变器48b通常可以使处理器转变到中间状态(例如S0低功率状态)中,所述中间状态具有比睡眠状态更短的唤醒等待时间。所图示的BIOS装置48还包括唤醒单元48c,所述唤醒单元48c使处理器维持在中间状态中直到检测到唤醒事件为止。在一个示例中,转变器48b包括可选的恢复单元50,用以反转一个或多个功率降低操作(例如设备功率降低操作、处理器功率降低操作)。可替换地,恢复单元50的功能性可以取决于用于中间状态的功率节约解决方案、通过OS恢复流来自动处置。
因而,如果所请求的睡眠状态是ACPI S3状态,则BIOS装置48可以包括状态清除器48e,用以将处理器的模式复原到已知状态(例如进行处理器的重置),其中恢复单元50还可以响应于待机请求而执行一个或多个处理器恢复操作(例如,存储器配置数据的还原)。另外,处理器功率节约器56可以执行一个或多个处理器功率降低操作(例如,功率轨修改、增强的时钟门控、主动空闲操作)。所图示的BIOS装置48还包括切换单元48d,所述切换单元48d在检测到唤醒事件并且所请求的状态是ACPI S3睡眠状态时将对处理器的控制转移回到OS。
另一方面,如果所请求的睡眠状态是ACPI S1状态,则转变器48b可以包括设备功率节约器58,用以执行一个或多个设备功率降低操作(例如发布EC功率命令)。在这样的情况下,处理器功率节约器56还可以执行一个或多个处理器功率降低操作以仿真所请求的S1状态。因而,当所请求的睡眠状态是ACPI S1状态时,可以绕过状态清除器48e,因为在这样的情况中所图示的转变器48b操作而对OS状态没有影响。
图5图示了根据一个实施例的处理器核200。处理器核200可以是用于任何类型的处理器(诸如微处理器、嵌入式处理器、数字信号处理器(DSP)、网络处理器、或执行代码的其它设备)的核。尽管在图5中图示了仅一个处理器核200,但是处理元件可以可替换地包括多于一个在图5中图示的处理器核200。处理器核200可以是单线程的核,或对于至少一个实施例,处理器核200可以是多线程的,因为它可以每核包括多于一个硬件线程上下文(或“逻辑处理器”)。
图5还图示了耦合到处理器核200的存储器270。存储器270可以是如已知的或以其它方式可用于本领域技术人员的任何多种多样的存储器(包括存储器层次的各种层)。存储器270可以包括将由处理器核200执行的一个或多个代码213指令,其中代码213可以实现已经讨论过的方法20(图2)。在一个示例中,存储器270是非闪速存储器。处理器核200遵循由代码213所指示的指令的程序序列。每个指令可以进入前端部分210并且由一个或多个解码器220处理。解码器220可以作为其输出而生成微操作,诸如以预定义格式的固定宽度的微操作,或可以生成反映原始代码指令的其它指令、微指令或控制信号。所图示的前端210还包括寄存器重命名逻辑225和调度逻辑230,所述寄存器重命名逻辑225和调度逻辑230一般分配资源以及将对应于转换指令的操作排队以用于执行。
处理器核200被示出为包括执行逻辑250,所述执行逻辑250具有一组执行单元255-1到255-N。一些实施例可以包括专用于特定功能或功能集的多个执行单元。其它实施例可以包括仅仅一个执行单元或可以执行特定功能的一个执行单元。所图示的执行逻辑250执行由代码指令所指定的操作。
在由代码指令所指定的操作的执行完成之后,后端逻辑260引退(retire)代码213的指令。在一个实施例中,处理器核200允许无序执行但是要求有序的指令引退。引退逻辑265可以采取如对本领域技术人员已知的各种形式(例如重排序缓冲器等等)。以此方式,在代码213的执行期间,至少在由解码器所生成的输出、由寄存器重命名逻辑225所使用的硬件寄存器和表以及由执行逻辑250所修改的任何寄存器(未示出)方面变换处理器核200。
尽管在图5中未图示,但是处理元件可以在具有处理器核200的芯片上包括其它元件。例如,处理元件可以随同处理器核200一起包括存储器控制逻辑。处理元件可以包括I/O控制逻辑和/或可以包括与存储器控制逻辑相集成的I/O控制逻辑。处理元件还可以包括一个或多个高速缓存。
现在参考图6,示出的是根据实施例的计算系统1000实施例的框图。图6中所示的是包括第一处理元件1070和第二处理元件1080的多处理器系统1000。虽然示出了两个处理元件1070和1080,但是要理解的是系统1000的实施例还可以包括仅仅一个这样的处理元件。
系统1000被图示为点对点互连系统,其中第一处理元件1070和第二处理元件1080经由点对点互连1050而耦合。应当理解的是,图6中所图示的互连中的任一个或全部可以被实现为多点分支(multi-drop)总线而不是点对点互连。
如图6中所示,处理元件1070和1080中的每一个都可以是多核处理器,包括第一和第二处理器核(即处理器核1074a和1074b以及处理器核1084a和1084b)。这样的核1074a、1074b、1084a、1084b可以被配置成以与以上结合图5所讨论的方式相类似的方式来执行指令代码。
每个处理元件1070、1080可以包括至少一个共享的高速缓存1896a、1896b。共享的高速缓存1896a、1896b可以存储分别由处理器的一个或多个组件(诸如核1074a、1074b和1084a、1084b)所使用的数据(例如指令)。例如,共享的高速缓存1896a、1896b可以对存储器1032、1034中所存储的数据进行本地高速缓存以供处理器的组件更快速地访问。在一个或多个实施例中,共享的高速缓存1896a、1896b可以包括一个或多个中间级高速缓存,诸如第2级(L2)、第3级(L3)、第4级(L4)或其它级的高速缓存、末级高速缓存(LLC)、和/或其组合。
虽然示出有仅仅两个处理元件1070、1080,但是要理解的是,实施例的范围不被这样限制。在其它实施例中,在给定处理器中可以存在一个或多个附加的处理元件。可替换地,处理元件1070、1080中的一个或多个可以是除了处理器之外的元件,诸如加速器或现场可编程门阵列。例如,(一个或多个)附加的处理元件可以包括与第一处理器1070相同的附加的(一个或多个)处理器,与处理器、第一处理器1070异构或不对称的附加的(一个或多个)处理器、加速器(诸如例如图形加速器或数字信号处理(DSP)单元)、现场可编程门阵列、或任何其它处理元件。在处理元件1070、1080之间,在包括架构的、微架构的、热学的、功率消耗特性等等的指标的度量的范围方面可以存在各种差异。这些差异实际上可以将它们自身表明为在处理元件1070、1080之间的不对称性和异构性。对于至少一个实施例,各种处理元件1070、1080可以驻留在相同的裸片封装中。
第一处理元件1070还可以包括存储器控制器逻辑(MC)1072和点对点(P-P)接口1076和1078。类似地,第二处理元件1080可以包括MC 1082和P-P接口1086和1088。如图6中所示,MC的1072和1082将处理器耦合到相应的存储器,即存储器1032和存储器1034,其可以是本地附连到相应处理器的主存储器的部分。虽然MC 1072和1082被图示为集成到处理元件1070、1080中,但是对于可替换的实施例,MC逻辑可以是处理元件1070、1080外的分立逻辑,而不是被集成到其中。
第一处理元件1070和第二处理元件1080可以分别经由P-P互连1076 1086而耦合到I/O子系统1090。如图6中所示,I/O子系统1090包括P-P接口1094和1098。此外,I/O子系统1090包括接口1092以耦合I/O子系统1090与高性能图形引擎1038。在一个实施例中,总线1049可以用于将图形引擎1038耦合到I/O子系统1090。替换地,点对点互连可以耦合这些组件。
进而,I/O子系统1090可以经由接口1096而耦合到第一总线1016。在一个实施例中,第一总线1016可以是外围组件互连(PCI)总线,或者诸如PCI快速总线或另一第三代I/O互连总线之类的总线,但是实施例的范围不这样被限制。
如图6中所示,各种I/O设备1014(例如相机、传感器)可以耦合到第一总线1016,连同总线桥1018,所述总线桥1018可以将第一总线1016耦合到第二总线1020。在一个实施例中,第二总线1020可以是低引脚计数(LPC)总线。各种设备可以耦合到第二总线1020,在一个实施例中包括例如键盘/鼠标1012、(一个或多个)通信设备1026和数据存储单元1019,诸如盘驱动器或可以包括代码1030的其它大容量存储设备。所图示的代码1030可以实现已经讨论过的方法20(图2),并且可以类似于已经讨论的代码213(图5)。此外,音频I/O 1024可以耦合到第二总线1020并且电池1010可以向计算系统1000供给功率。
注意到,设想了其它实施例。例如,代替于图6的点对点架构,系统可以实现多点分支总线或另一这样的通信拓扑。而且,图6的元件可以可替换地通过使用比图6中所示的更多或更少的集成芯片而被分区。
附加的注解和示例:
示例1可以包括一种仿真系统待机的计算系统,包括向计算系统供给功率的电池、运行操作系统(OS)的处理器和基本输入/输出系统(BIOS),所述基本输入/输出系统(BIOS)包括:拦截器,用以响应于使处理器转变到睡眠状态中的OS请求而接取对处理器的控制;转变器,用以使处理器转变到中间状态中,所述中间状态具有比睡眠状态更短的唤醒等待时间;以及唤醒单元,用以使处理器维持在中间状态中直到检测到唤醒事件为止。
示例2可以包括示例1的计算系统,其中所述BIOS还包括恢复单元,用以响应于唤醒事件而反转一个或多个功率降低操作。
示例3可以包括示例1或2中任一项的计算系统,其中所述转变器包括:状态清除器,用以进行处理器的重置;恢复单元,用以执行一个或多个处理器恢复操作;处理器功率节约器,用以执行一个或多个处理器功率降低操作;以及切换单元,用以响应于唤醒事件而将对处理器的控制转移到OS。
示例4可以包括示例3的计算系统,其中所述睡眠状态将是高级配置和功率接口(ACPI)S3状态。
示例5可以包括示例1或2中任一项的计算系统,其中所述转变器包括执行一个或多个设备功率降低操作的设备功率节约器,以及执行一个或多个处理器功率降低操作的处理器功率节约器。
示例6可以包括示例5的计算系统,其中所述睡眠状态将是高级配置和功率接口(ACPI)S1状态。
示例7可以包括一种操作BIOS的方法,包括:响应于使处理器转变到睡眠状态中的OS请求而接取对处理器的控制;使处理器转变到中间状态中,所述中间状态具有比睡眠状态更短的唤醒等待时间;以及使处理器维持在中间状态中直到检测到唤醒事件为止。
示例8可以包括示例7的方法,还包括响应于唤醒事件而反转一个或多个功率降低操作。
示例9可以包括示例7或8中任一项的方法,其中使处理器转变到中间状态中包括:进行处理器的重置;执行一个或多个处理器恢复操作;执行一个或多个处理器功率降低操作;以及将对处理器的控制转移到OS。
示例10可以包括示例9的方法,其中所述睡眠状态是高级配置和功率接口(ACPI)S3状态。
示例11可以包括示例7或8中任一项的方法,其中使处理器转变到中间状态中包括执行一个或多个设备功率降低操作,以及执行一个或多个处理器功率降低操作。
示例12可以包括示例11的方法,其中所述睡眠状态是高级配置和功率接口(ACPI)S1状态。
示例13可以包括至少一个包括BIOS指令集的计算机可读存储介质,所述BIOS指令在由计算系统执行时使得计算系统响应于使处理器转变到睡眠状态中的OS请求而接取对处理器的控制;使处理器转变到中间状态中,所述中间状态具有比睡眠状态更短的唤醒等待时间;以及使处理器维持在中间状态中直到检测到唤醒事件为止。
示例14可以包括示例13的所述至少一个计算机可读存储介质,其中所述BIOS指令在被执行时使得计算系统响应于唤醒事件而反转一个或多个功率降低操作。
示例15可以包括示例13或14中任一项的所述至少一个计算机可读存储介质,其中所述BIOS指令在被执行时使得计算系统:进行处理器的重置;执行一个或多个处理器恢复操作;执行一个或多个处理器功率降低操作;以及将对处理器的控制转移到OS。
示例16可以包括示例15的所述至少一个计算机可读存储介质,其中所述睡眠状态将是高级配置和功率接口(ACPI)S3状态。
示例17可以包括示例13或14中任一项的所述至少一个计算机可读存储介质,其中所述BIOS指令在被执行时使得计算系统执行一个或多个设备功率降低操作,以及执行一个或多个处理器功率降低操作。
示例18可以包括示例17的所述至少一个计算机可读存储介质,其中所述睡眠状态将是高级配置和功率接口(ACPI)S1状态。
示例19可以包括一种BIOS装置,所述BIOS装置包括:拦截器,用以响应于使处理器转变到睡眠状态中的OS请求而接取对处理器的控制;转变器,用以使处理器转变到中间状态中,所述中间状态具有比睡眠状态更短的唤醒等待时间;以及唤醒单元,用以使处理器维持在中间状态中直到检测到唤醒事件为止。
示例20可以包括示例19的装置,还包括恢复单元,用以响应于唤醒事件而反转一个或多个功率降低操作。
示例21可以包括示例19或20中任一项的装置,其中所述转变器包括:状态清除器,用以进行处理器的重置;恢复单元,用以执行一个或多个处理器恢复操作;处理器功率节约器,用以执行一个或多个处理器功率降低操作;以及切换单元,用以将对处理器的控制转移到OS。
示例22可以包括示例21的装置,其中所述睡眠状态将是高级配置和功率接口(ACPI)S3状态。
示例23可以包括示例19或20中任一项的装置,其中所述转变器包括执行一个或多个设备功率降低操作的设备功率节约器,以及执行一个或多个处理器功率降低操作的处理器功率节约器。
示例24可以包括示例23的装置,其中所述睡眠状态将是高级配置和功率接口(ACPI)S1状态。
示例25可以包括一种基本输入/输出系统(BIOS)装置,其包括用于执行示例7至12中任一项的方法的构件。
因而,本文中所述的技术可以使得能够实现“即时启动”功能性,而同时充分支持更灵活的睡眠状态、相当大的功率节约和延长的电池寿命。此外,与支持标准ACPI待机模式的OS配对的系统可以受益于硬件和软件增强,诸如低功率CPU和芯片组空闲操作,在没有系统重置和后续硬件排序的情况下恢复,在没有系统固件(例如BIOS)辅助和重认证的情况下恢复等等。另外,技术可以消除对于基于传感器的推测性恢复途径的任何需要并且可以进而在系统待机期间提供更大的一致性。
实施例可适用于供所有类型的半导体集成电路(“IC”)芯片使用。这些IC芯片的示例包括但不限于处理器、控制器、芯片组组件、可编程逻辑阵列(PLA)、存储器芯片、网络芯片、芯片上系统(SoC)、SSD/NAND控制器ASIC等等。另外,在一些附图中,用线来表示信号导体线。某些可以是不同的以指示多个组成信号路径,具有数字标签以指示数个组成信号路径,和/或在一端或多端具有箭头以指示主要信息流方向。然而,这不应以限制性方式来被解释。相反,这样添加的细节可以结合一个或多个示例性实施例来被使用以促进对电路的更容易的理解。任何所表示的信号线,无论是否具有附加信息,可以实际包括一个或多个信号,所述一个或多个信号可以在多个方向上行进并且可以利用任何合适类型的信号方案来被实现,例如,利用差分对实现的数字或模拟线、光纤线和/或单端线。
可能已经给出了示例性的尺寸/模型/值/范围,但是实施例不限于所述内容。当制造技术(例如光刻)随着时间而成熟时,预期可以制造更小尺寸的设备。另外,到IC芯片和其它组件的众所周知的功率/接地连接可以或可以不被示出在图内,以用于图示和讨论的简单,并且以便不使实施例的某些方面模糊不清。此外,可以以框图形式来示出布置,以便避免使实施例模糊不清,并且还鉴于以下事实:即关于这样的框图布置的实现方式的细节高度取决于实施例将被实现在其内的计算系统,即,这样的细节应当很好地在本领域技术人员的眼界范围内。在其中阐明了具体细节(例如电路)以便描述示例性实施例的情况下,对于本领域技术人员而言应当显而易见的是,可以在没有这些具体细节的情况下或在这些具体细节的变型的情况下实践实施例。描述因而要被视为说明性的而不是限制性的。
术语“耦合的”可以在本文中用于指代所讨论的组件之间的任何类型的关系(直接的或间接的),并且可以适用于电学、机械、流体、光学、电磁、机电或其它连接。另外,术语“第一”、“第二”等等可以在本文中仅仅用于促进讨论,并且不承载任何特定的时间或时序意义,除非以其它方式指示。
如在本申请中和权利要求中所使用的,通过术语“其中的一个或多个”所连接的项目列表可以意指所列举项的任何组合。例如,短语“A、B或C中的一个或多个”可以意指A;B;C;A和B;A和C;B和C;或A、B和C。
本领域技术人员将从前述描述中领会到,可以以各种形式来实现实施例的广泛技术。因此,虽然实施例已经结合其特定示例被描述,但是实施例的真实范围不应被这样限制,因为在研习了附图、说明书和随后的权利要求时,其它修改对于技术从业者将变得显而易见。

Claims (25)

1.一种计算系统,包括:
向计算系统供给功率的电池;
运行操作系统(OS)的处理器;
基本输入/输出系统(BIOS),其包括:
拦截器,用以响应于使处理器转变到睡眠状态中的OS请求而接取对处理器的控制;
转变器,用以使处理器转变到中间状态中,所述中间状态具有比睡眠状态更短的唤醒等待时间;以及
唤醒单元,用以使处理器维持在中间状态中直到检测到唤醒事件为止。
2.根据权利要求1所述的计算系统,其中所述BIOS还包括恢复单元,用以响应于唤醒事件而反转一个或多个功率降低操作。
3.根据权利要求1或2中任一项所述的计算系统,其中所述转变器包括:
状态清除器,用以进行处理器的重置;
恢复单元,用以执行一个或多个处理器恢复操作;
处理器功率节约器,用以执行一个或多个处理器功率降低操作;以及
切换单元,用以响应于唤醒事件而将对处理器的控制转移到OS。
4.根据权利要求3所述的计算系统,其中所述睡眠状态将是高级配置和功率接口(ACPI)S3状态。
5.根据权利要求1或2中任一项所述的计算系统,其中所述转变器包括:
执行一个或多个设备功率降低操作的设备功率节约器;以及
执行一个或多个处理器功率降低操作的处理器功率节约器。
6.根据权利要求5所述的计算系统,其中所述睡眠状态将是高级配置和功率接口(ACPI)S1状态。
7.一种操作基本输入/输出系统(BIOS)的方法,包括:
响应于使处理器转变到睡眠状态中的操作系统(OS)请求而接取对处理器的控制;
使处理器转变到中间状态中,所述中间状态具有比睡眠状态更短的唤醒等待时间;以及
使处理器维持在中间状态中直到检测到唤醒事件为止。
8.根据权利要求7所述的方法,还包括响应于唤醒事件而反转一个或多个功率降低操作。
9.根据权利要求7或8中任一项所述的方法,其中使处理器转变到中间状态中包括:
进行处理器的重置;
执行一个或多个处理器恢复操作;
执行一个或多个处理器功率降低操作;以及
将对处理器的控制转移到OS。
10.根据权利要求9所述的方法,其中所述睡眠状态是高级配置和功率接口(ACPI)S3状态。
11.根据权利要求7或8中任一项所述的方法,其中使处理器转变到中间状态中包括:
执行一个或多个设备功率降低操作;以及
执行一个或多个处理器功率降低操作。
12.根据权利要求11所述的方法,其中所述睡眠状态是高级配置和功率接口(ACPI)S1状态。
13.至少一个包括基本输入/输出系统(BIOS)指令集的计算机可读存储介质,所述基本输入/输出系统(BIOS)指令在由计算系统执行时使得计算系统:
响应于使处理器转变到睡眠状态中的操作系统(OS)请求而接取对处理器的控制;
使处理器转变到中间状态中,所述中间状态具有比睡眠状态更短的唤醒等待时间;以及
使处理器维持在中间状态中直到检测到唤醒事件为止。
14.根据权利要求13的所述至少一个计算机可读存储介质,其中所述BIOS指令在被执行时使得计算系统响应于唤醒事件而反转一个或多个功率降低操作。
15.根据权利要求13或14中任一项的所述至少一个计算机可读存储介质,其中所述BIOS指令在被执行时使得计算系统:
进行处理器的重置;
执行一个或多个处理器恢复操作;
执行一个或多个处理器功率降低操作;以及
将对处理器的控制转移到OS。
16.根据权利要求15的所述至少一个计算机可读存储介质,其中所述睡眠状态将是高级配置和功率接口(ACPI)S3状态。
17.根据权利要求13或14中任一项的所述至少一个计算机可读存储介质,其中所述BIOS指令在被执行时使得计算系统:
执行一个或多个设备功率降低操作;以及
执行一个或多个处理器功率降低操作。
18.根据权利要求17的所述至少一个计算机可读存储介质,其中所述睡眠状态将是高级配置和功率接口(ACPI)S1状态。
19.一种基本输入/输出系统(BIOS)装置,其包括:
拦截器,用以响应于使处理器转变到睡眠状态中的操作系统(OS)请求而接取对处理器的控制;
转变器,用以使处理器转变到中间状态中,所述中间状态具有比睡眠状态更短的唤醒等待时间;以及
唤醒单元,用以使处理器维持在中间状态中直到检测到唤醒事件为止。
20.根据权利要求19所述的装置,还包括恢复单元,用以响应于唤醒事件而反转一个或多个功率降低操作。
21.根据权利要求19或20中任一项所述的装置,其中所述转变器包括:
状态清除器,用以进行处理器的重置;
恢复单元,用以执行一个或多个处理器恢复操作;
处理器功率节约器,用以执行一个或多个处理器功率降低操作;以及
切换单元,用以将对处理器的控制转移到OS。
22.根据权利要求21所述的装置,其中所述睡眠状态将是高级配置和功率接口(ACPI)S3状态。
23.根据权利要求19或20中任一项所述的装置,其中所述转变器包括:
执行一个或多个设备功率降低操作的设备功率节约器;以及
执行一个或多个处理器功率降低操作的处理器功率节约器。
24.根据权利要求23所述的装置,其中所述睡眠状态将是高级配置和功率接口(ACPI)S1状态。
25.一种基本输入/输出系统(BIOS)装置,其包括:
用于响应于使处理器转变到睡眠状态中的操作系统(OS)请求而接取对处理器的控制的构件;
用于使处理器转变到中间状态中的构件,所述中间状态具有比睡眠状态更短的唤醒等待时间;以及
用于使处理器维持在中间状态中直到检测到唤醒事件为止的构件。
CN201580027615.6A 2014-06-27 2015-06-18 具有快速恢复的系统待机仿真 Expired - Fee Related CN107077184B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/317628 2014-06-27
US14/317,628 US9785447B2 (en) 2014-06-27 2014-06-27 System standby emulation with fast resume
PCT/US2015/036324 WO2015200077A1 (en) 2014-06-27 2015-06-18 System standby emulation with fast resume

Publications (2)

Publication Number Publication Date
CN107077184A true CN107077184A (zh) 2017-08-18
CN107077184B CN107077184B (zh) 2020-07-07

Family

ID=54930569

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580027615.6A Expired - Fee Related CN107077184B (zh) 2014-06-27 2015-06-18 具有快速恢复的系统待机仿真

Country Status (7)

Country Link
US (1) US9785447B2 (zh)
EP (1) EP3161587A4 (zh)
JP (1) JP6293933B2 (zh)
KR (1) KR101915006B1 (zh)
CN (1) CN107077184B (zh)
SG (1) SG11201609551SA (zh)
WO (1) WO2015200077A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021258395A1 (en) * 2020-06-26 2021-12-30 Intel Corporation Methods, systems, articles of manufacture, and apparatus to dynamically schedule a wake pattern in a computing system
US11360528B2 (en) 2019-12-27 2022-06-14 Intel Corporation Apparatus and methods for thermal management of electronic user devices based on user activity
US11379016B2 (en) 2019-05-23 2022-07-05 Intel Corporation Methods and apparatus to operate closed-lid portable computers
US11543873B2 (en) 2019-09-27 2023-01-03 Intel Corporation Wake-on-touch display screen devices and related methods
US11733761B2 (en) 2019-11-11 2023-08-22 Intel Corporation Methods and apparatus to manage power and performance of computing devices based on user presence
US11809535B2 (en) 2019-12-23 2023-11-07 Intel Corporation Systems and methods for multi-modal user device authentication

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10228750B2 (en) * 2016-10-31 2019-03-12 Dell Products, L.P. Reducing the power consumption of an information handling system capable of handling both dynamic and static display applications
DE112016007529T5 (de) * 2016-12-20 2019-09-26 Intel Corporation Verwaltung von Energiezuständen

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6016548A (en) * 1993-12-28 2000-01-18 Kabushiki Kaisha Toshiba Apparatus for controlling duty ratio of power saving of CPU
US20140068302A1 (en) * 2012-08-28 2014-03-06 Ohad Falik Mechanism for facilitating faster suspend/resume operations in computing systems
US20140143572A1 (en) * 2012-11-16 2014-05-22 Lenovo (Singapore) Pte, Ltd. Shortening resume time from a power-saving state

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11161385A (ja) * 1997-11-28 1999-06-18 Toshiba Corp コンピュータシステムおよびそのシステムステート制御方法
JP2000039937A (ja) * 1998-07-22 2000-02-08 Toshiba Corp コンピュータシステムおよびそのパワーセーブ制御方法
US6571333B1 (en) 1999-11-05 2003-05-27 Intel Corporation Initializing a memory controller by executing software in second memory to wakeup a system
US6725384B1 (en) 2000-06-30 2004-04-20 Intel Corporation Method and apparatus for enabling a wake-up event by modifying a second register to enable a second wake-up event responsive to detecting entry of data in a first register
JP2002312079A (ja) * 2001-04-12 2002-10-25 Internatl Business Mach Corp <Ibm> コンピュータシステム、コンピュータ装置、コンピュータ装置における給電制御方法
JP4436219B2 (ja) * 2004-09-10 2010-03-24 富士通株式会社 情報処理装置及び電源制御方法
JP2007264953A (ja) * 2006-03-28 2007-10-11 Toshiba Corp 情報処理装置および動作制御方法
JP2008090436A (ja) * 2006-09-29 2008-04-17 Toshiba Corp 情報処理装置およびシステム状態制御方法。
US7971081B2 (en) * 2007-12-28 2011-06-28 Intel Corporation System and method for fast platform hibernate and resume
JP5696564B2 (ja) * 2011-03-30 2015-04-08 富士通株式会社 情報処理装置および認証回避方法
CA2843320A1 (en) * 2011-07-25 2013-01-31 Servergy, Inc. Method and system for building a low power computer system
US8719609B2 (en) 2011-10-12 2014-05-06 Apple Inc. Using latched events to manage sleep/wake sequences on computer systems
US9182999B2 (en) * 2012-05-30 2015-11-10 Advanced Micro Devices, Inc. Reintialization of a processing system from volatile memory upon resuming from a low-power state
JP2014102789A (ja) * 2012-11-22 2014-06-05 Toshiba Corp 電子機器、電源制御方法、及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6016548A (en) * 1993-12-28 2000-01-18 Kabushiki Kaisha Toshiba Apparatus for controlling duty ratio of power saving of CPU
US20140068302A1 (en) * 2012-08-28 2014-03-06 Ohad Falik Mechanism for facilitating faster suspend/resume operations in computing systems
US20140143572A1 (en) * 2012-11-16 2014-05-22 Lenovo (Singapore) Pte, Ltd. Shortening resume time from a power-saving state

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11379016B2 (en) 2019-05-23 2022-07-05 Intel Corporation Methods and apparatus to operate closed-lid portable computers
US20220334620A1 (en) 2019-05-23 2022-10-20 Intel Corporation Methods and apparatus to operate closed-lid portable computers
US11782488B2 (en) 2019-05-23 2023-10-10 Intel Corporation Methods and apparatus to operate closed-lid portable computers
US11874710B2 (en) 2019-05-23 2024-01-16 Intel Corporation Methods and apparatus to operate closed-lid portable computers
US11543873B2 (en) 2019-09-27 2023-01-03 Intel Corporation Wake-on-touch display screen devices and related methods
US11733761B2 (en) 2019-11-11 2023-08-22 Intel Corporation Methods and apparatus to manage power and performance of computing devices based on user presence
US11809535B2 (en) 2019-12-23 2023-11-07 Intel Corporation Systems and methods for multi-modal user device authentication
US11360528B2 (en) 2019-12-27 2022-06-14 Intel Corporation Apparatus and methods for thermal management of electronic user devices based on user activity
US11966268B2 (en) 2019-12-27 2024-04-23 Intel Corporation Apparatus and methods for thermal management of electronic user devices based on user activity
WO2021258395A1 (en) * 2020-06-26 2021-12-30 Intel Corporation Methods, systems, articles of manufacture, and apparatus to dynamically schedule a wake pattern in a computing system

Also Published As

Publication number Publication date
CN107077184B (zh) 2020-07-07
EP3161587A1 (en) 2017-05-03
US9785447B2 (en) 2017-10-10
JP6293933B2 (ja) 2018-03-14
US20150378748A1 (en) 2015-12-31
KR101915006B1 (ko) 2018-11-06
SG11201609551SA (en) 2016-12-29
WO2015200077A1 (en) 2015-12-30
KR20160146911A (ko) 2016-12-21
JP2017520850A (ja) 2017-07-27
EP3161587A4 (en) 2018-03-21

Similar Documents

Publication Publication Date Title
CN107077184A (zh) 具有快速恢复的系统待机仿真
TWI516909B (zh) 包括在裝置中自主的硬體式深度省電之能源效率及能源節約的方法、設備及系統
TWI599960B (zh) 在多核心處理器中執行電源管理
US9058282B2 (en) Dynamic cache write policy
JP5406149B2 (ja) イベント処理のためのターボ性能を向上させる方法および装置
CN104169832B (zh) 提供处理器的能源高效的超频操作
CN102163072B (zh) 用于节能的基于软件的线程重映射
CN103765409A (zh) 有功率效率的处理器体系结构
TWI528165B (zh) 用於電源管理的系統
US20090153211A1 (en) Integrated circuit device core power down independent of peripheral device operation
CN106489108A (zh) 控制系统存储器的温度
TWI493332B (zh) 用於電力管理的方法與設備及其平台與電腦可讀取媒體
CN107924219A (zh) 遮蔽处理器的核的功率状态
CN102057344A (zh) 睡眠处理器
TWI578152B (zh) 用於進入低功率狀態之設備、物品及控制器
CN104813283A (zh) 处理器核保留状态的独立控制
US11544129B2 (en) Cross-component health monitoring and improved repair for self-healing platforms
KR102143269B1 (ko) I/o 동작 특성에 기초한 soc 유휴 전력 상태 제어를 위한 시스템 및 방법
CN114787777A (zh) 异构处理器之间的任务转移方法
TWI609260B (zh) 用於使平台子系統平行進入一較低功率狀態之技術
US11880231B2 (en) Accurate timestamp or derived counter value generation on a complex CPU
CN106095046A (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
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: 20200707

Termination date: 20210618