首页> 中国专利> 管理计算系统从待机功率状态到上电状态的转变

管理计算系统从待机功率状态到上电状态的转变

摘要

示例实施方式涉及管理计算系统从待机功率状态到上电状态的转变的系统和方法。计算系统包括可管理性控制器、初始化控制器、辅助装置和处理器。在这种示例中,当计算系统从待机功率状态转变到上电状态时,可管理性控制器可以首先根据与辅助装置相对应的数据来确定辅助装置的初始化状态。在一个或多个示例中,初始化状态可以包括辅助装置处于初始化阶段或非初始化阶段。随后,响应于确定辅助装置的初始化状态处于非初始化阶段,可管理性控制器可以引导初始化控制器延迟计算系统从待机功率状态到上电状态的转变。

著录项

  • 公开/公告号CN114967890A

    专利类型发明专利

  • 公开/公告日2022-08-30

    原文格式PDF

  • 申请/专利权人 慧与发展有限责任合伙企业;

    申请/专利号CN202111232217.1

  • 发明设计人 P·舍勒;D·海因里奇;S·法斯;

    申请日2021-10-22

  • 分类号G06F1/26(2006.01);

  • 代理机构北京市汉坤律师事务所 11602;北京市汉坤律师事务所 11602;

  • 代理人初媛媛;吴丽丽

  • 地址 美国德克萨斯州

  • 入库时间 2023-06-19 16:34:57

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-07-04

    实质审查的生效 IPC(主分类):G06F 1/26 专利申请号:2021112322171 申请日:20211022

    实质审查的生效

说明书

背景技术

通常,计算系统(例如,服务器)具有两种功率状态,如待机功率状态和上电状态。在待机功率状态下,低电压/安培数装置(例如计算系统的可管理性控制器或电可擦除可编程只读存储器(EEPROM))是正常运转的以向用户提供关于计算系统的基本服务。例如,可管理性控制器可以与计算系统的一个或多个辅助装置/适配器交互以从那些辅助装置获得a)管理信息和b)健康指标信息并且将该信息传送给用户。此外,在待机功率状态下,高电压/安培数装置(例如,计算系统的处理器和/或芯片组)以及高速/带宽物理传输接口(如快速外围部件互连(PCIe))等不是正常运转的。

附图说明

下面将参考以下附图描述各种示例。

图1是描绘了根据本公开的实施例的具有可管理性控制器、多个辅助装置、初始化控制器和处理器的计算系统的框图。

图2是描绘了根据本公开的实施例的将图1的计算系统从待机功率状态转变到上电状态的过程的框图。

图3是描绘了根据本公开的实施例的可管理性控制器的框图,该可管理性控制器具有可操作地耦接到存储可执行程序指令的机器可读介质的处理资源。

图4是描绘了根据本公开的实施例的处理资源和机器可读介质的框图,该机器可读介质编码有示例指令,该指令可由可管理性控制器执行以管理计算系统从待机功率状态到上电状态的转变。

图5是描绘了根据本公开的实施例的将计算系统从待机功率状态转变到上电状态的方法的流程图。

在所有附图中,相同的附图标记可以指代类似但不一定相同的元件。附加到一些附图标记的索引号“N”可以理解为仅指示复数个,并且对于具有这样的索引号“N”的每个附图标记而言可能不一定表示相同的数量。另外,本文中在附图标记在其他地方与索引号一起提及的情况下,这种附图标记在没有索引号的情况下的使用可以集体地或单个地概括指代对应的复数个元件。在另一个示例中,索引号“I”、“M”等可以用于代替索引号N。附图不一定成比例,并且可以放大一些部分的尺寸以更清楚地图示所示出的示例。此外,附图提供了与描述一致的示例和/或实施方式;然而,描述不限于附图中提供的示例和/或实施方式。

具体实施方式

以下具体实施方式参考了附图。在可能的情况下,相同的附图标记在附图中以及以下描述中用于指代相同的或类似的部分。然而,应明确理解,附图仅用于说明和描述的目的。尽管在本文档中描述了若干示例,但是修改、改编和其他实施方式是可行的。因此,以下具体实施方式不限制所公开的示例。相反,所公开示例的正确范围可以由所附权利要求限定。

本文中使用的术语仅用于描述示例的目的,并且不旨在具有限制性。如本文中所使用的,单数形式“一个”、“一种”和“该”旨在也包括复数形式,除非上下文另外明确指出。如本文中使用的,术语“多个”被定义为两个或两个以上。如本文中所使用的术语“另一个”被定义为至少是第二个或更多。如本文中使用的,除非另外指示,否则术语“耦接的”被定义为连接的,无论是没有任何介入元件直接连接还是借助至少一个介入元件间接连接。两个元件可以机械耦接、电耦接或通过通信信道、路径、网络或系统通信联系。本文所使用的术语“和/或”是指并涵盖相关联列举项目中的一个或多个项目的任何和所有可行的组合。还应理解的是,尽管术语第一、第二、第三等在本文中可以用于描述各种元件,但是这些元件不应受这些术语的限制,因为这些术语仅用于将一个元件与另一元件区分开,除非另有说明或上下文另有指示。如本文所使用的,术语“包括”是指包括但不限于,术语“包含”是指包含但不限于。术语“基于”是指至少部分地基于。

如本文所使用的,术语“辅助装置”或“辅助适配器”可以指一种类型的电子部件,其不是计算系统固有的,或者是计算系统的辅助并且可能必须通过插入/安装到计算系统的方式来添加,以将信息放入计算系统和从计算系统获取信息。如本文所使用的,术语“初始化阶段”可以指辅助装置的如下状态:所述辅助装置准备好被计算系统发现(即,辅助装置已经成功完成自启动步骤后)以执行与计算系统的事务和/或执行预期功能。类似地,术语“非初始化阶段”可以指辅助装置的如下状态:该辅助装置尚未被计算系统发现(即,辅助装置尚未成功完成自启动步骤)以执行与计算系统的事务和/或执行预期功能。如本文所使用的,术语“待机功率状态”可以指计算系统的省电模式,其中,计算系统的一个或多个核心部件(例如,处理器、存储器等)以及一个或多个辅助装置(例如,智能NIC、相机装置、人机接口装置等)处于空闲模式或复位模式。类似地,术语“上电”状态可以指计算系统的有源供电模式,其中,计算系统的一个或多个核心部件以及一个或多个辅助装置处于工作模式或从复位模式释放。

出于解释本公开的目的,参考图1至图5中图示的部件来描述某些示例。然而,图示的部件的功能可以重叠,并且可以存在于更少或更多数量的元件和部件中。此外,图示的元件的所有或部分功能可以共同存在或分布在若干地理上分散的位置。此外,公开的示例可以在各种环境中实施并且不限于图示的示例。此外,结合图2和图5描述的操作顺序是示例,而不旨在进行限制。在不背离所公开示例的范围的情况下,可以使用附加或更少的操作或操作组合或将其改变。因此,本公开仅仅阐述了实施方式的示例,并且可以对所描述的示例进行许多变化和修改。这样的修改和变化旨在包括在本公开的范围内并且由所附权利要求保护。

本公开描述了管理计算系统从待机功率状态到上电状态的转变的系统和方法的示例实施方式。具体地,本公开教导了在计算系统从待机功率状态转变到上电状态时确定连接到计算系统的辅助装置或辅助适配器的初始化状态,以及响应于确定辅助装置处于非初始化阶段来延迟计算系统向上电状态的转变。在一些示例中,辅助装置可以是连接到计算系统的辅助端口(例如快速外围部件互连(PCIe)端口)的智能装置,如智能网络接口卡(智能NIC)。

如服务器、存储系统、电源转换系统、联网系统、通信系统等计算机系统被设计为与各种各样的辅助装置一起工作。通常,大多数辅助装置、例如人机接口装置或存储装置在计算系统最初制造时都包括在计算系统中。然而,一些特定类型的辅助装置、例如智能装置可以由用户添加到计算系统中以扩展计算系统的能力。通常,如智能网络接口卡(智能NIC)、智能图形接口卡等智能装置建立在新兴技术的基础上,以允许其作为自主计算机器运行。因为,这种智能装置通常包括微处理器或一些其他可编程电子部件,以使其能够智能地操作和/或执行与计算系统的事务。

此外,计算系统的处理器可能需要认识添加到计算系统的智能装置,以为其提供必要的电力和传输接口,如快速外围部件互连(PCIe)、内部集成电路(I2C)等,以使这样的智能装置能够执行其预期功能和/或与计算系统的事务。因此,智能装置必须首先被初始化,以允许其被计算系统的处理器发现,从而为这些智能装置提供必要的电力和传输接口。然而,当计算系统从待机功率状态转变到上电状态时,某些类型的智能装置、例如智能NIC可能需要比现有行业标准规范当前支持的初始化处理器和/或传输接口的时间长得多的时间段来初始化。在这样的场景中,需要基本上更长的初始化时间段的智能装置可能无法被初始化,因为如根据现有的行业标准规范,计算系统的可管理性控制器可以立即重新启动对处理器的供电和/或将处理器从复位模式释放,以将计算系统转变到上电模式。

为了解决这样的问题,用于初始化处理器和/或传输接口的现有行业标准规范可能已经改变/修正。然而,这种改变行业标准规范的过程可能是繁琐且耗时的任务。因此,具有智能装置的计算系统的目标之一是在将计算系统转变到上电状态之前为智能装置提供间歇时间段进行初始化,即通过重新启动对处理器的供电和/或将处理器从复位模式释放。

针对上述问题的可行技术方案可以包括提供可管理性控制器和初始化控制器,用于管理计算系统从待机功率状态到上电状态的转变。在一些示例中,当计算系统转变到上电状态时,可管理性控制器可以首先确定一个或多个辅助装置的初始化状态。随后,如果可管理性控制器确定一个或多个辅助装置需要比行业标准规范基本上更多的时间来将计算系统转变到上电状态,则可管理性控制器可以指示初始化控制器延迟计算系统到上电状态的转变。由此,将计算系统保持在待机功率状态。在一些示例中,初始化控制器可以i)将对计算系统的处理器或芯片组中的至少一者的供电维持在挂起模式和/或ii)将处理器或芯片组中的至少一者维持在复位模式,以延迟计算系统从待机功率状态到上电状态的转变。因此,可管理性控制器和初始化控制器可以在重新启动对计算系统的处理器或芯片组中的至少一者的供电和/或将处理器或芯片组中的至少一者从复位模式释放之前为一个或多个辅助装置提供足够的时间段来进行初始化,以便将计算系统转变到上电状态。

在一个或多个示例中,即使当计算系统处于待机功率状态或关断状态时,可管理性控制器和初始化控制器也可以从辅助电源轨接收电力。因此,即使在计算系统处于待机功率状态时,可管理性控制器和初始化控制器也处于有源供电状态(例如,工作模式),从而允许可管理性控制器从一个或多个辅助装置获得a)管理信息、b)健康指标信息、以及c)初始化状态。因此,可管理性控制器可以将a)管理信息和b)健康指标信息传送给管理员,和/或c)管理计算系统从待机功率状态到上电状态的转变。计算系统的可管理性控制器可以在与计算系统的处理器(主处理器或主机处理器)分离的芯片上。可管理性控制器也在与智能装置分离的芯片上。类似地,初始化控制器可以在单独的芯片上实施。

在一些示例中,在计算系统转变到上电状态后,处理器可以从计算系统的闪速存储器到非易失性存储器取得基本输入/输出系统(BIOS),并且执行BIOS以对一个或多个辅助装置执行开机系统测试(POST)。执行BIOS之后,处理器可以还执行行业标准统一可扩展固件接口(UEFI),以便允许UEFI初始化计算系统的各种其他装置/部件,如传输接口等。因此,可管理性控制器和初始化控制器可以允许辅助装置准备好并且被处理器发现以执行预期功能和与计算系统的事务。

因此,本公开的示例实施方式教导了用于管理计算系统从待机功率状态到上电状态的转变的系统和方法。在这种示例中,计算系统包括可管理性控制器、初始化控制器、辅助装置和处理器。当计算系统从待机功率状态转变到上电状态时,可管理性控制器可以首先根据与辅助装置相对应的数据来确定辅助装置的初始化状态。在一个或多个示例中,初始化状态可以包括辅助装置处于初始化阶段或非初始化阶段。随后,响应于确定辅助装置的初始化状态处于非初始化阶段,可管理性控制器可以引导初始化控制器延迟计算系统从待机功率状态到上电状态的转变。

图1图示了示例计算系统100,该计算系统可以部署在数据中心环境中以向一个或多个客户提供服务。图2是描绘了将图1的计算系统100从待机功率状态转变到上电状态的过程的框图。在一些示例中,计算系统100是服务器,服务器可以包含敏感数据、可以连接到TCP/IP网络(包括因特网)并且可以托管(host)或执行一个或多个工作负荷。在一些其他示例中,计算系统100可以是存储系统、电力转换系统、联网系统、通信系统等,而不脱离本公开的范围。在一些示例中,计算系统100包括处理器102、芯片组104、存储器106、可管理性控制器108、初始化控制器110和多个辅助装置112。

处理器102可以是物理处理器,如中央处理单元(CPU)。在一些其他示例中,处理器102可以是图形处理单元(GPU)、微处理器等。在一些示例中,处理器102可以可操作地耦接到芯片组104、存储器106、初始化控制器110、多个辅助装置112和闪速存储器114。芯片组104可以是用于在计算系统100中执行特定任务的集成电路(IC)的集合。例如,芯片组104可以控制处理器102、存储器106和多个辅助装置112之间的通信。存储器106可以是易失性存储器(例如,随机存取存储器、缓存存储器等)和/或非易失性存储器(例如,电可擦除可编程只读存储器或硬盘等)。

可管理性控制器108可以是专用服务处理器,该专用服务处理器可以能够监测计算系统100的物理状态和/或控制硬件资源,如处理器102、芯片组104、存储器106、多个辅助装置112等。在一些示例中,可管理性控制器108是嵌入在要被监测的计算系统100的电路板(例如,母板)内的基板管理控制器(BMC)。在这种示例中,电路板也可以托管处理器102。此外,可管理性控制器108可以具有其自己的存储器(例如,机器可读的机器)和耦接到存储器的处理资源,并且可以执行存储在存储器中的一个或多个程序指令以监测计算系统100并且调节计算系统100的硬件资源向上电状态的转变。可管理性控制器108可以由辅助电源轨(未示出)供电,即使当计算系统100处于待机功率状态时,从而允许可管理性控制器108对计算系统100从待机功率状态到上电状态的转变序列进行协调。

初始化控制器110可以是数字逻辑电路装置,例如现场可编程门阵列(FPGA)装置或复杂可编程逻辑(CPLD)装置等。初始化控制器可以基于来自可管理性控制器108的输入/指令做出逻辑决定。在一些示例中,初始化控制器110可操作地耦接到可管理性控制器108、处理器102、和芯片组104。在这种示例中,初始化控制器110可以基于来自可管理性控制器108的指令控制到处理器102和/或芯片组104的信号。例如,初始化控制器通常可以具有一些默认功能,以在计算系统100从待机功率状态转变到上电状态时执行以下操作:如引导信号以重新启动对处理器102和/或芯片组104的供电,和/或将处理器102从复位模式中释放等。然而,初始化控制器110的这种默认功能可以通过来自可管理性控制器108的指令来修改/控制。在一个或多个示例中,例如,可管理性控制器108和初始化控制器110可以使用如平台管理通信基础设施(PMCI)或内部集成电路(I2C)协议等行业标准消息传递协议来彼此交互。

多个辅助装置112中的每一个可以是电子设备,该电子设备可以在其最初制造时被包括在计算系统100中,或者可以后来被添加到计算系统100以增强计算系统100的能力。例如,多个辅助装置112可以连接到计算系统100的电路板。在图1的示例中,例如,多个辅助装置112可以包括通用串行总线(USB)集线器112A、图形卡112B、和智能网络接口卡(智能NIC)112C。如上文所讨论的,智能NIC 112C可以被添加到计算系统100以增强计算系统100的网络能力。智能NIC 112C可以是用于通过以太网(未示出)将计算系统100连接到数据中心管理系统的硬件部件。在一个或多个示例中,智能NIC 112C可以卸载处理器102的某些网络功能,从而释放处理器102以增强计算系统100处理一个或多个工作负荷的性能。例如,智能NIC 112C可以采用一个或多个专用处理器来卸载功能,例如来自处理器102的低级别功能。此外,多个辅助装置112中的每一个都可以支持行业消息传递协议以允许可管理性控制器108与处理器102之间的互操作性。在一些示例中,行业标准消息传递协议可以包括快速外围部件互连(PCIe)、平台管理通信基础设施(PMCI)、内部集成电路(I2C)、系统管理总线(SMBus)等。

在计算系统100启动期间或计算系统100从待机功率状态转变到上电状态之后,处理器102可以将基本输入/输出系统(BIOS)从闪速存储器114加载到存储器106中并且从存储器106执行BIOS以执行多个启动步骤。在一些示例中,多个启动步骤可以包括:i)发现计算系统100的多个辅助装置112;ii)对多个辅助装置112执行开机系统测试(POST);iii)执行统一可扩展固件接口(UEFI)以初始化计算系统的各种其他部件,如传输接口等;以及iv)将OS加载到存储器106中。换句话说,当BIOS执行时,它可以首先发现那些被成功初始化的辅助装置112,并且随后在发现的辅助装置112上执行POST并且初始化传输接口。一旦OS被加载到存储器106中,处理器102就可以从存储器106启动OS。随后,OS可以执行所有基本任务,像文件管理、存储器管理、过程管理、处理输入和输出、以及控制辅助装置112等。

在一些示例中,当计算系统100处于上电状态时,用户可以通过向计算系统100发出软命令或硬命令来将计算系统100切换到待机功率状态。此外,用户可以通过重新发出软命令或硬命令来将计算系统100从待机功率状态切换回上电状态。如上文提到的,待机功率状态(例如,睡眠状态或休眠状态)可以指计算系统100的某种状态,其中,核心部件/装置、例如计算系统100的处理器102以及计算系统100的多个辅助装置112处于空闲模式或复位模式。类似地,上电状态可以指计算系统100的某种状态,其中,核心部件/装置以及多个辅助装置处于工作模式或从复位模式释放。

在一些示例中,计算系统100可以通过发出如打开计算系统100的电源按钮等硬命令来获得从待机功率状态转变到上电状态的(多个)指令。在这种示例中,打开电源按钮可能导致产生转变信号。在一个或多个示例中,转变信号可以用作多个辅助装置112的用于使它们自身被初始化的触发。在这种示例中,多个辅助装置112中的至少一些可以具有芯片或集成电路(IC,未示出)以自评估对应的辅助装置112进行初始化所需的时间段。

因此,对应的辅助装置112的芯片或IC可以使用与对应的辅助装置112进行初始化所需的时间段相对应的数据来更新多个非易失性存储器116中对应的非易失性存储器。在一些示例中,USB集线器112A可以使用为“2”秒的时间段数据来更新非易失性存储器116A,图形卡112B可以使用为“4”秒的时间段数据来更新非易失性存储器116B,并且智能NIC112C可以使用为“30”秒的时间段数据来更新非易失性存储器116C。此外,在待机功率状态下有源的可管理性控制器108可以中断转变信号,并且对计算系统100到上电状态的转变进行协调。例如,一旦可管理性控制器108中断转变信号,则可管理性控制器可以首先确定多个辅助装置112中的每一个辅助装置的初始化状态,如图2中的附图标记120所表示的。

在一个或多个示例中,多个辅助装置112中的每一个辅助装置的初始化状态可以表示对应的辅助装置112是处于初始化阶段还是处于非初始化阶段。如上文提到的,辅助装置112的初始化可以指辅助装置112的如下状态:该辅助装置已成功完成自启动步骤,并且准备好被处理器102发现以执行与计算系统100的事务和/或执行其预期功能。因此,已经完成初始化的辅助装置112可以具有如在初始化阶段的初始化状态。此外,尚未完成初始化的辅助装置112可以具有如在非初始化阶段的初始化状态。在一些示例中,根据多个辅助装置112的初始化状态,可管理性控制器108可以引导初始化控制器110延迟计算系统100到上电状态的转变或将计算系统100转变到上电状态,如分别由附图标记122、124所表示的。

在一个示例中,可管理性控制器108可以首先通过访问多个辅助装置112中的每一个辅助装置的非易失性存储器116来确定多个辅助装置112的初始化状态,以获得表示对应的辅助装置112进行初始化所需的时间段的数据,如图2中的附图标记120A所表示的。在一个或多个示例中,可管理性控制器108可以利用行业标准通信协议(例如,I2C)来访问多个辅助装置112中的每一个辅助装置的非易失性存储器116。因此,可管理性控制器108可以接收与多个辅助装置112中的每一个辅助装置进行初始化所需的时间段相对应的数据,如图2中的附图标记120B所表示的。在这种示例中,可管理性控制器108可以处理从多个非易失性存储器116中的每一个非易失性存储器接收的数据以检测多个辅助装置112中的每一个辅助装置进行初始化所需的时间段。

因此,可管理性控制器108可以检测USB集线器112A进行初始化需要“2”秒,图形卡112B进行初始化需要“4”秒,并且智能NIC 112C进行初始化需要“30”秒。在这种示例中,可管理性控制器108还可以处理检测到的数据以确定多个辅助装置112中的每一个辅助装置的初始化状态。例如,可管理性控制器108可以将与来自多个辅助装置112中的每一个辅助装置的用于将计算系统100转变到上电状态的时间段相对应的检测到的数据和与用于将计算系统100转变到上电状态的行业标准规范相对应的行业数据进行比较,以便确定初始化状态。在一些示例中,用于将计算系统100转变到上电状态的行业标准规范可以设置为“2”秒。因此,可管理性控制器108可以确定图形卡112B和智能NIC 112C可能需要基本上更多时间进行初始化,并且因此确认一个或多个辅助装置112的初始化状态处于非初始化阶段。

在一个示例中,可管理性控制器108可以随后引导初始化控制器110延迟计算系统100到上电状态的转变,如图2中的附图标记122所表示的。在一些示例中,可管理性控制器108可以使用行业标准通信协议(例如,I2C协议)与初始化控制器110交互。在这种示例中,初始化控制器110可以通过重新建立与同处理器102和/或芯片组104相对应的电源轨和/或信号轨的通信来延迟计算系统100到上电状态的转变。在一些示例中,初始化控制器110可以通过将对处理器102或芯片组104的供电保持在挂起模式来延迟计算系统100到上电状态的转变。在一些其他示例中,初始化控制器110可以通过以下操作来延迟计算系统100到上电状态的转变:i)重新启动对处理器102或芯片组104的供电,以及ii)将处理器102或芯片组104维持在复位模式。换句话说,初始化控制器110可以根据来自可管理性控制器108的指令进行操作,并且配置计算系统100以延迟到处理器102的电力转变或将处理器102保持在复位状态,使得不会从闪速存储器114取得BIOS代码。因此,有效地延迟了发现辅助装置112并且开始POST。在一个或多个示例中,初始化控制器110可以控制到处理器102的电源信号(轨),并且如果可管理性控制器108指示计算系统100的延迟初始化,则初始化控制器110可以对包括可选槽的电路板上电,但是留下处理器102处于i)断电或复位状态或ii)上电但处于复位状态。

在一些示例中,当可管理性控制器108指示初始化控制器110延迟计算系统100的转变时,可管理性控制器108可以另外地向初始化控制器110提供与多个辅助装置112中的一个辅助装置进行初始化所需的最大时间段相对应的数据。在这些示例中,初始化控制器110可以将处理器102的板载计时器挂起持续该最大时间段,以保持处理器102或芯片组104处于复位模式和/或将对处理器102或芯片组104的供电维持在挂起模式。在一些示例中,初始化控制器110可以将处理器102保持在复位模式持续“30”的秒时间段,该时间段是多个辅助装置112中的智能NIC 112C初始化所需的最大时间段。

在一些示例中,在多个辅助装置112中的一个辅助装置所需的最大时间段过去之后,初始化控制器110可以将计算系统100转变到上电状态,如图2中的附图标记125所表示的。更具体地,初始化控制器可以重新启动对处理器102或芯片组104的供电,和/或释放/撤销处理器102或芯片组104以退出复位模式,如图2中的附图标记124B所表示的。因此,允许处理器102开始加载和执行BIOS以启动开始序列,如上文提到的。替代性地,在一些其他示例中,可管理性控制器108可以等待多个辅助装置112中的一个辅助装置进行初始化所需的最大时间段。随后,可管理性控制器108可以启动计算系统100从待机功率状态到上电状态的转变,如图2中的附图标记125所表示的。例如,在多个辅助装置112中的一个辅助装置进行转变所需的最大时间段过去之后,可管理性控制器108可以引导初始化控制器110将计算系统100转变到上电状态,如图2中的附图标记124A所表示的。因此,初始化控制器110可以重新启动对处理器102或芯片组104的供电,和/或释放/撤销处理器102或芯片组104以退出复位模式,如图2中的附图标记124B所表示的。

在一些其他示例中,可管理性控制器108可以通过查询多个辅助装置112中的每一个辅助装置来确定多个辅助装置112的初始化状态,以获得表示对应辅助装置112的初始化计数器的数据,如图2中的附图标记120A所表示的。在一些示例中,初始化计数器可以具有比特形式的数据,例如“0”或“1”,它们可以分别表示“初始化阶段”或“非初始化阶段”。在一个或多个示例中,可管理性控制器108可以利用行业标准通信协议(例如,PMCI)直接与多个辅助装置112交互。在一些示例中,USB集线器112A的初始化计数器可以为“0”,图形卡112B的初始化计数器可以为“1”,并且智能NIC 112C的初始化计数器可以为“1”。基于对多个辅助装置112的查询,可管理性控制器108可以从多个辅助装置112中的每一个辅助装置接收与初始化计数器相对应的数据,如图2中的附图标记120B所表示的。在这种示例中,可管理性控制器108可以处理接收到的数据以确定多个辅助装置112中的每一个辅助装置的初始化状态。例如,可管理性控制器108可以将初始化计数器数据与预定数据进行比较以确定多个辅助装置112中的每一个辅助装置的初始化状态。在这种示例中,预定数据也可以是比特的形式,例如“0”或“1”,其分别表示“初始化阶段”或“非初始化阶段”。在一些示例中,基于初始化计数器数据与预定数据的比较,图形卡112B和智能NIC 112C可以处于非初始化阶段。

在这种示例中,可管理性控制器108可以引导初始化控制器110延迟计算系统100到上电状态的转变,如图2中的附图标记122所表示的。因此,初始化控制器110可以通过重新建立与同处理器102和/或芯片组104相对应的电源轨和/或信号轨的通信来延迟计算系统100到上电状态的转变。在这种示例中,可管理性控制器108可以在预定时间段结束之前,重新查询处于非初始化阶段的辅助装置112(如图1中的附图标记121所示)以及ii)重新确认处于非初始化阶段的辅助装置的初始化状态。在一些示例中,用户可以为多个辅助装置112中的每一个辅助装置提供预定时间段,并且这样的预定时间段数据可以存储在可管理性控制器108的机器可读介质中。在一些示例中,如果可管理性控制器108确定多个辅助装置112中的所有辅助装置都处于初始化阶段、甚至在预定时间段过去之前,则可管理性控制器108可以引导初始化控制器将计算系统100转变到上电状态,如图2中的附图标记124A所表示的。在一些其他示例中,当可管理性控制器108确定用于辅助装置初始化的预定时间段已经过去时,可管理性控制器可以引导初始化控制器110将计算系统100转变到上电状态,如图2中的附图标记124A所表示的。因此,初始化控制器110可以重新启动对处理器102或芯片组104的供电,和/或释放/撤销处理器102或芯片组104以退出复位模式,如图2中的附图标记124B所表示的。

在一些其他示例中,数据可以包括表示多个辅助装置112中的每一个辅助装置转变到上电状态所需的时间段的第一数据、以及表示多个辅助装置112中的每一个辅助装置的初始化计数器的第二数据。在这种示例中,可管理性控制器108可以首先通过访问多个辅助装置112的非易失性存储器116来确定多个辅助装置112的初始化状态以获得第一数据,如图2中的附图标记120所表示的。

如上文所讨论的,可管理性控制器108然后可以通过处理第一数据来确认多个辅助装置112中的每一个辅助装置的初始化状态。在一个示例中,如上文所讨论的,基于对第一数据的处理,可管理性控制器108可以首先检测USB集线器112A进行初始化需要“2”秒,图形卡112B进行初始化需要“4”秒,并且智能NIC 112C进行初始化需要“30”秒。可管理性控制器108随后可以基于检测到的数据与行业标准数据的比较来确定图形卡112B和智能NIC112C可能需要基本上更多时间进行初始化。因此,可管理性控制器108可以确认一个或多个辅助装置112的初始化状态处于非初始化阶段。因此,响应于确认一个或多个辅助装置112处于非初始化阶段,可管理性控制器108可以在第一数据中表示的时间段结束之前,周期性地:查询处于非初始化阶段的一个或多个辅助装置112以获得第二数据以及ii)通过对第二数据进行处理来确定辅助装置的初始化状态。第一数据中表示的时间段可以与多个辅助装置112中的一个辅助装置进行初始化所需的最大时间段相对应。在一些示例中,最大时间段可以与智能NIC 112C有关,该最大时间段可以为约“30”秒。在一些示例中,如果可管理性控制器108确定多个辅助装置112中的所有的辅助装置都处于初始化阶段(即,甚至在最大时间段过去之前),则可管理性控制器108可以引导初始化控制器将计算系统100转变到上电状态,如图2中的附图标记124A所表示的。在一些其他示例中,当可管理性控制器108确定辅助装置112初始化的最大时间段已经过去时,可管理性控制器可以引导初始化控制器110将计算系统100转变到上电状态,如图2中的附图标记124A所表示的。因此,初始化控制器110可以重新启动对处理器102或芯片组104的供电,和/或释放/撤销处理器102或芯片组104以退出复位模式,如图2中的附图标记124B所表示的。

因此,上文所讨论的技术可以有效地停止处理器时钟的时间,由此允许辅助装置112初始化并且准备好与BIOS配置命令交互。换句话说,上文所讨论的技术提供了动态(或实时可配置)时间段以允许智能装置有足够的时间来初始化其自身,同时维持服务器与现有行业标准规范的兼容性。如上文所讨论的,计算系统100的行业标准转变(即,正常的初始化序列)是立即向处理器102供电并且使处理器102退出其复位模式,处理器进而从闪速存储器114中取出BIOS代码。本公开提供了一些技术,用于将处理器102保持在待机功率模式或复位模式,同时允许其他部件(如辅助装置或适配器)从待机功率模式转变到上电模式,并且在准许处理器102和/或芯片组104转变到上电状态以加载和执行BIOS之前,完成辅助装置或适配器的初始化。

图3是可管理性控制器308的框图,该可管理性控制器包括处理资源302和存储可执行程序指令的机器可读介质304。在本文中应该注意的是,图3中提及的可管理性控制器308可以与图1和图2中描述的可管理性控制器108相同或类似。在示例实施例中,处理资源302可操作地耦接到机器可读介质304。处理资源302可以是物理处理器。在一些示例中,物理处理器可以是适合于执行关于图1和图2描述的功能的微处理器。在一些示例中,机器可读介质304是非暂态的并且替代性地被称为非暂态机器可读介质。

处理资源302执行一个或多个程序指令以执行图1和图2中描述的一个或多个功能。例如,处理资源302可以执行程序指令以在计算系统从待机功率状态转变到上电状态时,根据与辅助装置相对应的数据来确定辅助装置的初始化状态。在一个或多个示例中,初始化状态包括辅助装置处于初始化阶段或非初始化阶段。

在一些示例中,确定初始化状态可以包括a)访问辅助装置的非易失性存储器以获得表示辅助装置转变到上电状态所需时间段的数据;以及b)通过对从辅助装置获得的数据进行处理来确认辅助装置的初始化状态。在一些其他示例中,确定初始化状态可以包括a)查询辅助装置以获得表示辅助装置的初始化计数器的数据;b)通过对从辅助装置获得的数据进行处理来确认辅助装置的初始化状态;以及c)响应于确认辅助装置处于非初始化阶段,在预定时间段结束之前,周期性地:i)重新查询辅助装置以及ii)重新确认辅助装置的初始化状态。在一些其他示例中,数据可以包括表示辅助装置转变到上电状态所需的时间段的第一数据以及表示辅助装置的初始化计数器的第二数据。在这种示例中,确定初始化状态可以包括a)访问辅助装置的非易失性存储器以获得第一数据;b)通过对第一数据进行处理来确认辅助装置的初始化状态;以及c)响应于确认辅助装置处于非初始化阶段,在第一数据中表示的时间段结束之前,周期性地:i)查询辅助装置以获得第二数据以及ii)通过对从辅助装置获得的第二数据进行处理来确认辅助装置的初始化状态。

处理资源302可以随后执行一个或多个程序指令以执行图1和图2中描述的一个或多个功能。例如,处理资源302可以执行程序指令以引导初始化控制器响应于确定辅助装置的初始化状态处于非初始化阶段而延迟计算系统到上电状态的转变。在这种示例中,初始化控制器可以将对计算系统的处理器或芯片组中的至少一者的供电维持在挂起模式。替代性地,初始化控制器可以i)重新启动对计算系统的处理器或芯片组中的至少一者的供电,以及ii)将处理器或芯片组中的至少一者维持在复位模式。

在一些其他示例中,如果处理资源302确定辅助装置的初始化状态处于初始化阶段,则处理资源302可以执行程序指令以引导初始化控制器将计算系统转变到上电状态。例如,初始化控制器可以i)重新启动对处理器或芯片组中的至少一者的供电,以及ii)将处理器或芯片组中的至少一者从复位模式释放,以将计算系统转变到上电状态。

图4是描绘了处理资源402和机器可读介质404的框图400,该机器可读介质编码有示例指令,该指令可由可管理性控制器执行以管理计算系统从待机功率状态到上电状态的转变。在本文中应该注意的是,图4中提及的可管理性控制器可以与图1至图2和图3中分别描述的可管理性控制器108、308相同或类似。机器可读介质404是非暂态的并且可替代地被称为非暂态机器可读介质。在一些示例中,机器可读介质404可以由处理资源402访问。在一些示例中,机器可读介质404存储与可管理性控制器的功能(如在图1至图2中所讨论的)相对应的程序指令。机器可读介质404可以分别编码有示例第一指令406和第二指令408。

第一指令406在由处理资源402执行时可以实施以下方面:当计算系统从待机功率状态转变到上电状态时,根据与辅助装置相对应的数据来确定辅助装置的初始化状态,其中,初始化状态包括辅助装置处于初始化阶段或非初始化阶段。确定辅助装置的初始化状态的步骤在图1至图2中详细描述。

第二指令408在执行时可以基于确定辅助装置的初始化状态处于非初始化阶段使处理资源402引导初始化控制器延迟计算系统到上电状态的转变。替代性地,第二指令408在执行时可以基于确定辅助装置的初始化状态处于初始化阶段使处理资源402引导初始化控制器将计算系统转变到上电状态。图1至图2中详细描述了引导初始化控制器延迟计算系统向上电状态的转变或将计算系统转变到上电状态的步骤。

图5是描绘了根据本公开的实施例的管理计算系统从待机功率状态到上电状态的转变的方法500的流程图。在本文中应该注意的是,方法500是结合图1至图2描述的。

方法500从框502开始并继续到框504。在框504处,方法500包括当计算系统从待机功率状态转变到上电状态时,接收与辅助装置相对应的数据,如图1至图2中描述的。在一个或多个示例中,数据可以包括表示辅助装置转变到上电状态所需的时间段的第一数据和/或表示辅助装置的初始化计数器的第二数据。方法500继续到框506。

参照框506处的一个功能,方法500包括根据与辅助装置相对应的数据来确定辅助装置的初始化状态。在一些示例中,确定初始化状态可以包括a)访问辅助装置的非易失性存储器以获得表示辅助装置转变到上电状态所需时间段的数据(即,第一数据),以及b)通过对从辅助装置获得的第一数据进行处理来确认辅助装置的初始化状态,如图1至图2所讨论的。在一些其他示例中,确定初始化状态可以包括a)查询辅助装置以获得表示辅助装置的初始化计数器的数据(即,第二数据)、以及b)通过对从辅助装置获得的第二数据进行处理来确认辅助装置的初始化状态,如图1至图2所讨论的。

在框506处,如果可管理性控制器确定辅助装置的初始化状态处于非初始化阶段,即,在框506处为“是”,则方法500移动到框508。在框508处,方法500包括引导初始化控制器延迟计算系统到上电状态的转变,如图1至图2中所讨论的。在一些示例中,延迟计算系统到上电状态的转变可以包括将对计算系统的处理器或芯片组中的至少一者的供电维持在挂起模式。替代性地,延迟计算系统到上电状态的转变可以包括i)重新启动对计算系统的处理器或芯片组中的至少一者的供电,以及ii)将处理器或芯片组中的至少一者维持在复位模式。方法500继续到框510,如附图标记512所表示的。

在一些示例中,在框510处,方法500还包括周期性地i)重新查询辅助装置以获得第一数据,以及ii)基于对第一数据进行处理以确定辅助装置的初始化状态来重新确认辅助装置的初始化状态。在一些其他示例中,在框510处,方法500还包括确定用于辅助装置初始化的预定时间段是否已经过去。在一些其他示例中,在框510处,方法500还包括在第一数据中表示的时间段结束之前,i)查询辅助装置以获得第二数据以及ii)通过对从辅助装置获得的第二数据进行处理来确认辅助装置的初始化状态。因此,在框510处,A)如果可管理性控制器确定辅助装置的初始化状态处于非初始化阶段,或B)用于初始化的预定时间段没有过去,或C)第一数据中表示的用于辅助装置初始化的时间段没有过去,即,在框510处为“否”,则方法500移动到框508,如附图标记514所表示的。方法500可以可选地重复框508处的功能并且移动回到框510。在框510处,A)如果可管理性控制器确定辅助装置的初始化状态处于初始化阶段,或B)用于辅助装置初始化的预定时间段过去了,或C)第一数据中表示的用于辅助装置初始化的时间段过去了,即,在框510处为“是”,则方法500移动到框516,如附图标记518所表示的。换句话说,在框510处,如果可管理性控制器确定在如上文讨论的重新查询和重新确认步骤期间,辅助装置的初始化状态处于初始化阶段,则方法500可以移动到框516,如附图标记518所表示的。类似地,换句话说,在框510处,如果可管理性控制器可以确定,在预定时间段过去之后或第一数据中表示的时间段过去之后,辅助装置的初始化状态仍处于非初始化阶段,则方法500仍可以移动到框516,如附图标记518所表示的。

在框516处,方法500包括引导初始化控制器将计算系统转变到上电状态,如图1至图2中描述的。在一些示例中,引导初始化控制器将计算系统转变到上电状态可以包括将对计算系统的处理器或芯片组中的至少一者的供电维持在挂起模式。替代性地,引导初始化控制器将计算系统转变到上电状态可以包括i)重新启动对计算系统的处理器或芯片组中的至少一者的供电,以及ii)将处理器或芯片组中的至少一者维持在复位模式。方法500在框520处停止。

返回参考框506处的另一个功能,如果可管理性控制器确定辅助装置的初始化状态处于初始化阶段,即,在框506处为“否”,则方法500移动到框522,如附图标记524所表示的。因此,在框522处,方法500包括引导初始化控制器将计算系统转变到上电状态,如图1至图2中描述的。在一些示例中,引导初始化控制器将计算系统转变到上电状态可以包括将对计算系统的处理器或芯片组中的至少一者的供电维持在挂起模式。替代性地,引导初始化控制器将计算系统转变到上电状态可以包括i)重新启动对计算系统的处理器或芯片组中的至少一者的供电,以及ii)将处理器或芯片组中的至少一者维持在复位模式。方法500在框520处停止。

可以实施如本文中描述的示例中所图示的各种特征以高效地管理计算系统从待机功率模式到上电模式的转变。可管理性控制器和初始化控制器提供了动态(或实时可配置)时间段以允许智能装置有足够的时间来初始化其自身,同时维持服务器与现有行业标准规范的兼容性。换句话说,可管理性控制器和初始化控制器将处理器保持在待机功率模式或复位模式,同时允许如智能装置或适配器等其他部件在加载和执行BIOS之前,从待机功率模式转变到上电模式并完成智能适配器的初始化。

在前述描述中,阐述了许多细节以提供对本文中公开的主题的理解。然而,可以在没有这些细节中的一些或全部细节的情况下实践实施方式。其他实施方式可以包括上文所讨论的细节的修改、组合和变化。所附权利要求旨在覆盖这样的修改和变化。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号