一种风扇调速方法及相关装置与流程

文档序号:16582433发布日期:2019-01-14 18:05阅读:205来源:国知局
一种风扇调速方法及相关装置与流程

本发明涉及设备散热技术领域,更具体地说,涉及一种风扇调速方法、系统、装置及计算机可读存储介质。



背景技术:

随着大数据与云计算时代的到来,互联网技术的快速发展也带起了服务器市场的繁荣,大量的数据存储、大规模的网站需要数量巨大的服务器,而这些服务器大多需要在机房中24小时不间断运行,发热量十分庞大,因此对服务器采取何种有效合理的散热策略,将直接关系到服务器的整体运行性能,防止因为数据流量过大引起服务器瘫痪。

在当前的服务器设计中,一般采用bmc芯片来对服务器风扇进行调速,但是bmc芯片在实际中可能会发生因故障而挂死的情况,从而引发服务器风扇失控,无法继续保证服务器的散热,cpu温度持续上升则极有可能造成服务器死机。

因此,如何有效保证cpu的散热性能,是本领域技术人员需要解决的问题。



技术实现要素:

本发明的目的在于提供一种风扇调速方法、系统、装置及计算机可读存储介质,以解决如何有效保证cpu的散热性能的问题。

为实现上述目的,本发明实施例提供了如下技术方案:

一种风扇调速方法,包括:

利用bios确定bmc的工作状态;

判断所述bmc的工作状态是否正常;

若否,则利用pch芯片输出第一电平至二选一选择器,利用bios完成目标风扇的调速;

若是,则利用所述pch芯片输出第二电平至所述二选一选择器,利用所述bmc完成所述目标风扇的调速。

其中,所述判断所述bmc的工作状态是否正常之前,还包括:

利用所述bios确定调节目标风扇转速的pwm波的占空比值;

则所述利用bios完成所述目标风扇的调速,包括:

利用所述bios将所述占空比值写入pch芯片的pwm寄存器;

利用所述pch芯片输出所述占空比值对应的pwm波,以使所述目标风扇根据所述pwm波调速。

其中,所述利用所述bios确定调节目标风扇转速的pwm波的占空比值,包括:

利用所述bios读取目标设备的当前功耗;其中,所述目标设备为所述目标风扇所属的设备;

利用所述当前功耗确定所述目标风扇转速的pwm波的占空比值。

其中,所述利用所述bmc完成所述目标风扇的调速,包括:

利用所述bmc获取所述bios确定的所述占空比值;

利用所述bmc输出与所述占空比值对应的pwm波,以使所述目标风扇根据所述pwm波调速。

其中,所述利用bios确定bmc的工作状态,包括:

利用所述bios向所述bmc发送ipmi命令读取所述bmc的工作状态。

本申请还提供了一种风扇调速系统,包括:

确定模块,用于利用bios确定bmc的工作状态;

判断模块,用于判断所述bmc的工作状态是否正常;

第一调速模块,用于所述bmc的工作状态为不正常时,利用pch芯片输出第一电平至二选一选择器,利用bios完成所述目标风扇的调速;

第二调速模块,用于所述bmc的工作状态为正常时,利用所述pch芯片输出第二电平至所述二选一选择器,利用所述bmc完成所述目标风扇的调速。

其中,还包括:

占空比值确定模块,用于在所述判断所述bmc的工作状态是否正常之前,利用所述bios确定调节目标风扇转速的pwm波的占空比值;

则所述第一调速模块,包括:

第一输出单元,用于当所述bmc的工作状态为不正常时,利用pch芯片输出第一电平至二选一选择器;

写入单元,用于利用所述bios将所述占空比值写入pch芯片的pwm寄存器;

第二输出单元,用于利用所述pch芯片输出所述占空比值对应的pwm波,以使所述目标风扇根据所述pwm波调速。

其中,所述第二调速模块,包括:

第三输出单元,用于当所述bmc的工作状态为正常时,利用所述pch芯片输出第二电平至所述二选一选择器。

获取单元,用于利用所述bmc获取所述bios确定的所述占空比值;

第四输出单元,用于利用所述bmc输出与所述占空比值对应的pwm波,以使所述目标风扇根据所述pwm波调速。

本申请还提供了一种风扇调速设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如所述风扇调速方法的步骤。

本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如所述风扇调速方法的步骤。

通过以上方案可知,本发明提供的一种风扇调速方法,包括:利用bios确定bmc的工作状态;判断所述bmc的工作状态是否正常;若否,则利用pch芯片输出第一电平至二选一选择器,利用bios完成目标风扇的调速;若是,则利用所述pch芯片输出第二电平至所述二选一选择器,利用所述bmc完成所述目标风扇的调速。

由此可见,本申请提供的一种风扇调速方法,利用bios检测bmc的工作状态,并在bmc工作状态正常时利用bmc继续风扇调速的工作,在bmc工作状态不正常时利用bios完成目标风扇的调速。因此在本方案中无需外加单片机,可以减少设备的散热负担,而且,在bmc状态出现异常时,依然可以利用bios完成对风扇的调速,有效保证了设备的散热性能。

本申请还提供了一种风扇调速系统、装置及计算机可读存储介质,同样可以实现上述技术效果。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例公开的一种风扇调速方法流程图;

图2为本发明实施例公开的一种具体的风扇调速方法;

图3为本发明实施例公开的一种风扇调速系统结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在现有技术中,使用bmc(baseboardmanagementcontroller,基板管理控制器)来实现风扇的调速,并且使用单片机来检测bmc是否是正常状态,在bmc正常工作时,单片机的相关电平为低电平,选通器将bmc的信号牌输出给风扇进行调速,而在检测到bmc失效后,则将相关电平调为高电平,选通器把电源高电平的pwr信号输出至风扇,让风扇保持全速转动。但是由于需要外加单片机来监测bmc的工作状态,而单片机功耗较高,因此会很大程度上增加设备的散热负担。另外,在bmc失效后,让风扇保持全速转动,无法继续进行风速的调节,而且单片机的处理速度较慢,相应bmc指令的时间较长,降低了风扇调速的实时性。

因此,本申请提供了一种风扇调速方法,利用bios(basicinputoutputsystem,基本输入输出系统)检测bmc的工作状态,并在bmc工作状态正常时利用bmc继续风扇调速的工作,在bmc工作状态不正常时利用bios完成目标风扇的调速。因此在本方案中无需外加单片机,可以减少设备的散热负担,而且,在bmc状态出现异常时,依然可以利用bios完成对风扇的调速,有效保证了设备的散热性能。

本发明实施例公开了一种风扇调速方法、系统、装置及计算机可读存储介质,以解决如何有效保证cpu的散热性能的问题。

参见图1,本发明实施例提供的一种风扇调速方法,具体包括:

s101,利用bios确定bmc的工作状态。

在本方案中,利用bios检测bmc的工作状态,确定bmc的工作状态是否是正常的状态。

在一个具体的实施方式中,利用所述bios向所述bmc发送ipmi(智能平台管理接口)命令读取所述bmc的工作状态。

具体地,bios向bmc发送ipmi命令后,会获取到ipmi命令的返回值,根据返回值可以确定bmc的状态是否正常。具体ipmi命令的内容可以参考现有技术,在本申请实施例中不做具体限定,只要可以获取到用于确定bmc状态的返回值即可。

s102,判断所述bmc的工作状态是否正常。

具体地,在获取到bmc的工作状态后,利用bios判断bmc的状态是否正常。如果正常则执行s103,如果不正常则执行s104。

s103,若否,则利用pch芯片输出第一电平至二选一选择器,利用bios完成所述目标风扇的调速。

具体地,如果bmc的状态不正常,也就是bmc不能够实现对风扇的调速,则在本方案中,利用bios实现对目标风扇的调速。

具体地,在检测到bmc的状态不正常时,利用pch芯片输出第一电平到二选一选择器,其中pch全称为platformcontrollerhub,是intel公司的集成南桥。

二选一选择器在接收到第一电平后会相应的改变二选一选择器的控制端的电平为第一电平,进而会根据第一电平控制bios获得对风扇的控制权,从而利用bios完成目标风扇的调速。

利用bios完成目标风扇的调速具体可以利用bios输出pwm波到风扇来实现,具体内容将在下述实施例做详细的解释说明,此处将不再进行赘述。

需要说明的是,第一电平通常为高电平,第二电平通常为低电平。

s104,若是,则利用所述pch芯片输出第二电平至所述二选一选择器,利用所述bmc完成所述目标风扇的调速。

具体地,如果bmc为正常的工作状态,则利用pch芯片输出第二电平到二选一选择器,从而二选一选择器的控制端的电平也为第二电平,bmc保持对风扇的调速控制权,进而利用bmc完成对风扇的调速。利用bmc完成调速的具体内容同样在下述实施例中做进一步的限定和说明,此处不再进行赘述。

由此可见,本申请提供了一种风扇调速方法,利用bios检测bmc的工作状态,并在bmc工作状态正常时利用bmc继续风扇调速的工作,在bmc工作状态不正常时利用bios完成目标风扇的调速。因此在本方案中无需外加单片机,可以减少设备的散热负担,而且,在bmc状态出现异常时,依然可以利用bios完成对风扇的调速,有效保证了设备的散热性能。

下面对本申请实施例提供的一种具体的风扇调速方法进行介绍,下文描述的一种具体的风扇调速方法主要对上述实施例中对目标风扇进行调速的具体过程做了进一步的限定和说明,其他步骤与上述实施例大致相同,具体内容可以参考上述实施例,本申请实施例中将不再进行赘述。

参见图2,本申请实施例提供的一种风扇调速方法,具体包括:

s201,利用bios确定bmc的工作状态。

s202,利用所述bios确定调节目标风扇转速的pwm波的占空比值。

在本方案中,在判断bmc是否正常之前,先利用bios确定目标风扇的转速pwm(pulsewidthmodulation,脉冲宽度调制)波的占空比值,也就是说,在本方案中无论是利用bmc实现对目标风扇的调速还是利用bios实现对目标风扇的调速,均先利用bios确定调节目标风扇转速的pwm波的占空比值。

需要说明的是,脉冲宽度调制是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中,目标风扇可以被pwm波实现调速。

而pwm波是通过占空比值确定,在一个具体的实施方式中,首先利用所述bios读取目标设备的当前功耗;其中,所述目标设备为所述目标风扇所属的设备;然后利用所述当前功耗确定所述目标风扇转速的pwm波的占空比值。

在本方案中,占空比值的确定是根据目标设备的当前功耗所确定的,利用当前目标设备的额功耗,计算出调节目标风扇转速的pwm波的占空比值。

s203,判断所述bmc的工作状态是否正常;若否,则执行s204,若是,则执行s207。

s204,利用pch芯片输出第一电平至二选一选择器。

s205,利用所述bios将所述占空比值写入pch芯片的pwm寄存器。

具体地,如果是由bios实现对目标风扇的调速,则利用bios将上述由bios计算得到的占空比值写入到pch的pwm寄存器。

s206,利用所述pch芯片输出所述占空比值对应的pwm波,以使所述目标风扇根据所述pwm波调速。

当占空比值被写入到pch芯片的寄存器后,就可以利用pch芯片将该占空比值对应的pwm波输出,从而使目标风扇根据pwm波实现调速。

可见,即便bmc出现异常情况不能继续对目标风扇进行调速,利用bios也可以根据具体的占空比值来实现调速,而不是将风扇没有针对性的调为全速转动,从而可以有效的保证设备的散热性能。

s207,利用所述pch芯片输出第二电平至所述二选一选择器,利用所述bmc获取所述bios确定的所述占空比值。

在本方案中,如果是由bmc来实现对目标风扇的调速,则首先需要利用bmc获取上述bios确定的占空比值。显然,利用bmc实现目标风扇的调速也可以参考现有技术中利用bmc实现风扇调速的方法,而本方案利用bios确定的占空比值只是作为一种更具体的实施方式。

s208,利用所述bmc输出与所述占空比值对应的pwm波,以使所述目标风扇根据所述pwm波调速。

利用bmc输出占空比值对应的pwm波,从而使风扇依据pwm波完成调速。

下面对本申请实施例提供的一种风扇调速系统进行介绍,下文描述的一种风扇调速系统与上风扇调速方法的实施例可以相互参照。

参见图3,本申请实施例提供的一种风扇调速系统,具体包括:

确定模块301,用于利用bios确定bmc的工作状态。

判断模块302,用于判断所述bmc的工作状态是否正常。

第一调速模块303,用于所述bmc的工作状态为不正常时,利用pch芯片输出第一电平至二选一选择器,利用bios完成所述目标风扇的调速。

第二调速模块304,用于所述bmc的工作状态为正常时,利用所述pch芯片输出第二电平至所述二选一选择器,利用所述bmc完成所述目标风扇的调速。

本实施例的风扇调速系统用于实现前述的风扇调速方法,因此风扇调速系统中的具体实施方式可见前文中的风扇调速方法的实施例部分,例如,确定模块301,判断模块302,第一调速模块303,第二调速模块304,分别用于实现上述风扇调速方法中步骤s101,s102,s103和s104,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。

下面对本申请实施例提供的一种具体的风扇调速系统进行介绍,下文描述的一种具体的风扇调速系统与上述任一实施例可以相互参照。

本申请实施例提供的一种具体的风扇调速系统,具体包括:

确定模块,用于利用bios确定bmc的工作状态。

判断模块,用于判断所述bmc的工作状态是否正常。

占空比值确定模块,用于在所述判断所述bmc的工作状态是否正常之前,利用所述bios确定调节目标风扇转速的pwm波的占空比值。

第一调速模块,用于所述bmc的工作状态为不正常时,利用pch芯片输出第一电平至二选一选择器,利用bios完成所述目标风扇的调速。

其中,第一调速模块,具体包括:

第一输出单元,用于当所述bmc的工作状态为不正常时,利用pch芯片输出第一电平至二选一选择器;

写入单元,用于利用所述bios将所述占空比值写入pch芯片的pwm寄存器;

第二输出单元,用于利用所述pch芯片输出所述占空比值对应的pwm波,以使所述目标风扇根据所述pwm波调速。

第二调速模块,用于所述bmc的工作状态为正常时,利用所述pch芯片输出第二电平至所述二选一选择器,利用所述bmc完成所述目标风扇的调速。

其中,第二调速模块具体包括:

第三输出单元,用于当所述bmc的工作状态为正常时,利用所述pch芯片输出第二电平至所述二选一选择器。

获取单元,用于利用所述bmc获取所述bios确定的所述占空比值;

第四输出单元,用于利用所述bmc输出与所述占空比值对应的pwm波,以使所述目标风扇根据所述pwm波调速。

本实施例的具体的风扇调速系统用于实现前述的具体的风扇调速方法,因此风扇调速系统中的具体实施方式可见前文中的风扇调速方法的实施例部分。

下面对本申请实施例提供的一种风扇调速设备进行介绍,下文描述的一种风扇调速设备与上述任一实施例可以相互参照。

本申请实施例提供的一种风扇调速设备,具体包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上述所述风扇调速方法的步骤。

可以理解的是,本申请提供的一种风扇调速设备,还包括上述实施例所述的bmc、pch芯片、目标风扇、二选一控制器等器件。

本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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