用于风扇转速控制的基板管理控制器固件更新方法与流程

文档序号:15557444发布日期:2018-09-29 01:27阅读:208来源:国知局

本发明是有关于一种基板管理控制器固件更新方法,特别是指一种用于风扇转速控制的基板管理控制器固件更新方法。



背景技术:

散热对于服务器的运作而言是极为重要的。通常,一基板管理控制器(baseboardmanagementcontroller;bmc)被用来控制安装于服务器的一个或多个风扇的转速,而且相关于风扇转速控制的风扇转速控制算法会以一程序的形式包含在一bmc固件中。

同一系列的多个服务器产品各自包含多个具有不同硬件配置的sku(stockkeepingunit),其中该等sku所需的风扇转速控制算法可能不尽相同。因此,当需以同一个bmc固件应用于此等sku的风扇转速控制时,多个分别对应于此等sku风扇转速控制算法必须均包含在该bmc固件中,如此含有相对较多程序的bmc固件恐需占用例如flash存储器中相对较大的储存空间。此外,对于既有服务器产品,若欲修改或调整bmc固件,例如bmc固件所含的风扇转速控制算法的设定参数时,恐仍需重新烧录所欲更新的bmc固件,因此造成使用上的不便。

另一方面,在服务器产品的开发过程中,恐需花费较多时间及心力在反复调整相关于散热的风扇转速控制算法所需的设定参数。特别是,在每次获得一组调整好的设定参数时,必须先将该组设定参数写入到一bmc固件以获得一测试版bmc固件,然后该测试版bmc固件被执行来测试及评估风扇散热效能。如此做法,不仅麻烦而且更需耗费相当的时间及人力资源。



技术实现要素:

因此,本发明的目的即在于提供一种用于风扇转速控制的基板管理控制器固件更新方法,其能克服习知技艺的缺点。

于是,本发明基板管理控制器固件更新方法,通过一基板管理控制系统来实施。该基板管理控制系统包含一储存有一相关于一风扇单元的转速控制的固件的储存模块,一包含有一第一暂存区及一第二暂存区的暂存模块、及一电连接该储存模块及该暂存模块的基板管理控制器。该暂存模块被用来储存下载自该储存模块的该固件,该基板管理控制器经由执行储存于该暂存模块的该固件来控制该风扇单元的转速,该固件包含相关于该风扇单元的转速控制的设定参数资料,该设定参数资料被储存于该暂存模块的该第二暂存区。该基板管理控制器固件更新方法包含以下步骤:

(a)该基板管理控制器回应于所接收到的一第一控制指令,开始接收相关于该风扇单元的转速控制的更新参数资料,并将所接收的该更新参数资料储存于该暂存模块的该第一暂存区;

(b)该基板管理控制器在接收到一第二控制指令时,判定储存于该暂存模块的该第一暂存区的该更新参数资料是否正确;及

(c)该基板管理控制器在判定出储存于该暂存模块的该第一暂存区的该更新参数资料正确无误时,以该暂存模块的该第一暂存区所储存的该更新参数资料来更新该暂存模块的该第二暂存区所储存的该设定参数资料。

在一些实施例中,该暂存模块还储存有一指示出该基板管理控制器是否处于一资料接收状态的状态旗标,并且在步骤(a)之前,还包含步骤(d)通过该基板管理控制器,在接收到该第一控制信号时,将该暂存模块所储存的该状态旗标的旗标值更新为一指示出该基板管理控制器处于该资料接收状态的第一旗标值。

在一些实施例中,在步骤(c)中,该基板管理控制器自一正常模式切换到一更新模式,且在更新该暂存模块的该第二暂存区所储存的该设定参数资料之前,还控制该风扇单元操作在一预设转速。

在一些实施例中,该预设转速为一最大转速。

在一些实施例中,在步骤(c)之后,还包含步骤(e)该基板管理控制器将该暂存模块所储存的该状态旗标的旗标值更新为一不同于该第一旗标值且指示出该基板管理控制器不处于该资料接收状态的第二旗标值。

在一些实施例中,在步骤(e)中,该基板管理控制器自该更新模式切换回该正常模式,并经由执行含有储存于该暂存模块的该第二暂存区且已更新的该设定参数资料的该固件来控制该风扇单元的转速。

在一些实施例中,在步骤(a)中,该更新参数资料包含一连串的更新参数码,并在步骤(c)中,已更新的该设定参数资料系以一参数表的形式储存于该暂存模块的该第二暂存区。

在一些实施例中,在步骤(c)中,该基板管理控制器在完成该设定参数资料的更新后,还以包含有已更新的该设定参数资料的该固件来更新该储存模块所储存的该固件。

相较于现有技术,本发明的该基板管理控制器可在一服务器使用中(即,上线状态),通过该第一控制指令开始进行该固件的一更新程序,并在该更新程序结束后立即经由执行已更新的该固件来控制该风扇单元的转速。如此,当使用者随时想要更新该基板管理控制器的固件时,不仅无须如习知技艺所述且麻烦的烧录程序,也不需将使用中的服务器断电或重启。特别是,在固件更新期间,该基板管理控制器控制该风扇单元暂时以该预设转速运转,藉此完全不影响服务器的运作,如此可大大提升在使用或测试时固件更新的方便性,并大幅降低在时间及人力资源上的耗费。

【附图说明】

图1是一方块示意图,绘示一用于实施本发明基板管理控制器固件更新方法的一实施例的基板管理控制系统;及

图2是一流程图,说明该基板管理控制系统的一基板管理控制器如何执行一固件更新程序。

【具体实施方式】

在本发明被详细描述的前,应当注意在以下的说明内容中,类似的元件是以相同的编号来表示。

参阅图1,所绘示的是一用来实施本发明基板管理控制器固件跟新方法的一实施例的基板管理控制系统100。在本实施例中,该基板管理控制系统100系应用于一包含一用于散热的风扇单元200的服务器(图未示),并在该服务器使用时,控制该风扇单元200的运转,以确保该服务器的正常运作。该基板管理控制系统100包含一暂存模块2、一储存模块3、及一电连接该暂存模块2与该储存模块3的基板管理控制器(baseboardmanagementcontroller)1。值得注意的是,该基板管理控制器1可操作在一更新模式或一正常模式,且该管理控制器1与该暂存模块2可被整合在一管理主机板上作为一管理控制平台。

该暂存模块2例如为一ram模块,但不在此限,并包含一第一暂存区21及一第二暂存区22。该暂存模块2储存有一指示出该基板管理控制器1是否处于一资料接收状态的状态旗标flag。

该储存模块3例如为一flash存储器模块,但不再此限,并储存有一相关于该风扇单元200的转速控制的固件fw。在本实施例中,该固件fw包含相关于该风扇单元200的转速控制的设定参数资料fsc。

在该服务器使用时(即,上线时),该暂存模块2储存有下载自该储存模块3的该固件(图1中未示出)。值得注意的是,在本实施例中,储存于该暂存模块2的该固件的该设定参数资料fsc例如被储存于该第二暂存区22,但不以此为限。在其他实施例中,储存于该暂存模块2的该固件的该设定参数资料fsc亦可被储存于该第一暂存区21。同时,该基板管理控制器1系操作在该正常模式,其中该基板管理控制器1经由执行该暂存模块2所储存的该固件来控制该风扇单元200的转速。

以下,参阅图1及图2来详细说明该基板管理控制器1如何在该服务器使用中根据本发明实施例来执行一固件更新程序。该固件跟新程序包含以下步骤。

在步骤s21中,当一使用者欲更新该固件fw时,可经由该服务器的作业系统(图未示)传送例如ipmioem命令的一第一控制指令c1至该基板管理控制器1,于是该基板管理控制器1接收来自该作业系统的该第一控制指令c1。值得注意的是,在本实施例中,该使用者可以是一近端管理者,而在其他实施例中,该使用者也可以是一远端管理者,以通讯方式使该服务器发出该第一控制指令c1。

在步骤s22中,该基板管理服务器1回应于所接收到的该第一控制指令c1而进入一资料接收状态,并将该暂存模块21所储存的该状态旗标flag的旗标值更新为一指示出该基板管理服务器1处于该资料接收状态的第一旗标值,例如true,但不再此限。

接着,在步骤s23中,该基板管理控制器1开始接收该使用者所欲且相关于该风扇单元200的转速控制的更新参数资料。在本实施例中,该基板管理控制器1例如将所接收的该更新参数资料储存于该暂存模块2的该第一暂存区21。而在其他实施例中,当该第一暂存区21储存有该固件fw的该设定参数资料fsc时,该更新参数资料亦可被储存于该第二暂存区22。在本实施例中,该(近端)使用者可经由手动输入操作并通过该服务器的作业系统传送至该基板管理控制器1,而在其他实施例中,一远端使用端可先利用网络通讯将该更新参数资料传送至该服务器,之后再经由该作业系统传送该基板管理控制器1。

在本实施例中,由于该更新参数资料例如包含完全对应于该设定参数资料的一连串的更新参数码、及一相关于该等更新参数码且作为验证该更新参数资料否正确无误的预定杂凑值。为确保该更新参数资料能被完整传送至该基板管理控制器1,在完整的该更新参数资料被传送至该基板管理控制器1后,该使用者会经由该服务器的作业系统再送出一用于指示资料传送完毕的第二控制指令c2至该基板管理控制器1。

在步骤s24中,依据上述,该基板管理控制器1通过是否接收到来自该服务器的该第二控制指令c2来判定该更新参数资料是否被完整接收。若该判定结果为肯定(即,接收到该第二控制指令c2)时,则流程进行步骤s25。相反地,若该判定结果为否定(即,尚未接收到该第二控制指令c2)时,则流程返回步骤s23,以便继续接收该更新参数资料的剩余部分。

在步骤s25中,该基板管理控制器1判定该暂存模块2的该第一暂存区21所储存的该更新参数资料是否正确无误。若该判定结果为肯定时,则流程进行步骤s26,否则,该基板管理控制器1传送一指示出资料不正确的错误讯息至该服务器(步骤s30)。值得注意的是,在本实施例中,该基板管理控制器1例如利用相同的杂凑算法而获得相关于该等更新参数码的一杂凑值,并通过判定所获得的该杂凑值是否匹配于所接收的该预定杂凑值来决定该更新参数资料是否正确无误。换言之,若判定出该杂凑值匹配于该预定杂凑值时,则该基板管理控制器1判定出该更新参数资料正确无误。

值得注意的是,从步骤s21至步骤s25期间,该基板管理控制器1仍维持操作在该正常模式,并经由执行储存于该暂存模块2的该固件来控制该风扇单元200的转速。

接着,在步骤s26中,该基板管理控制器1自该正常模式切换至该更新模式。在该更新模式下,该基板管理控制器1控制该风扇单元操作在例如最大转速的一预设转速,但不在此限。

在步骤s27中,首先,该基板管理控制器1例如是以该暂存模块2的该第一暂存区21所储存的该更新参数资料的该等更新参数码取代该设定参数资料的方式来更新该暂存模块2的该第二暂存区21所储存的该设定参数资料fsc,但不在此限。然后,该基板管理控制器1完成该设定参数资料fsc的更新后,还以包含有已更新的该设定参数资料fsc的该固件来更新该储存模块3所储存的该固件fw。在本实施例中,已更新的该设定参数资料fsc系以一参数表的形式储存于该暂存模块2的该第二暂存区22,但不再此限。

在步骤s28中,该基板管理控制器1将该暂存模块2所储存的该状态旗标flag的旗标值更新为一不同于该第一旗标值(例如true)且指示出该基板管理控制器不处于该资料接收状态的第二旗标值,例如false。

最后,在步骤s29中,该基板管理控制器1自该更新模式切换回该正常模式,并经由执行含有储存于该暂存模块2的该第二暂存区22且已更新的该设定参数资料fsc的该固件(即,更新的固件)来控制该风扇单元200的转速。

综上所述,根据本发明基板管理控制器固件更新方法,该基板管理控制器1可在一服务器使用中(即,上线状态),通过该第一控制指令c1开始进行该固件更新程序,并在该固件更新程序结束后,无须重新执行该基板管理控制器1的初始化而立即经由执行已更新的该固件来控制该风扇单元200的转速。如此,当使用者随时想要更新该基板管理控制器1的该固件fw时,特别是仅欲修改或调整该设定参数资料fsc时,不仅无须如习知技艺所述且麻烦的烧录程序,也不需将使用中的服务器断电或重启。特别是,在该固件fw更新期间,该基板管理控制器1控制该风扇单元200暂时以该预设转速运转,藉此完全不影响该服务器的运作,如此可大大提升在使用或测试时该固件fw更新的方便性,并大幅降低在时间及人力资源上的耗费,故确实能达成本发明的目的。

上面结合附图对本发明的具体实施方式和实施例做了详细说明,但不能以之限定本发明的范围,在本发明申请专利范围内所作的均等修饰和变化,皆应该属于本发明专利范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1