一种服务器散热控制方法和系统与流程

文档序号:12594995阅读:298来源:国知局
一种服务器散热控制方法和系统与流程

本发明涉及计算机技术领域,特别涉及一种服务器散热控制方法和系统。



背景技术:

在服务器运行过程中,有效地控制散热,是保证服务器稳定运行的关键。在当前的服务器设计中,一般采用BMC(Baseboard Management Controller,基板管理控制器)对服务器主板进行管理。BMC可以监控主板的健康信息,实现对主板温度的检测以及主板风扇的控制。人们对于服务器的稳定性要求越来越高,若当BMC在某些情况下失效,主板风扇便失去控制,则服务器散热将受到影响,若系统过热则将导致系统宕机,对服务器稳定性造成影响。



技术实现要素:

本发明实施例提供了一种服务器散热控制方法和系统,能够提高服务器的稳定性。

一方面,本发明实施例提供了一种服务器散热控制系统,包括:BMC、控制器、风扇控制芯片;

所述控制器分别与所述BMC、所述风扇控制芯片、外部的待控制风扇相连;

所述控制器、所述BMC和所述风扇控制芯片,均与所述待控制风扇相连;

所述BMC,用于按照预设的周期,周期性地向所述控制器发送喂狗信号,向所述待控制风扇发送第一控制信号,通过所述第一控制信号控制所述待控制风扇;

所述控制器,用于接收所述BMC发送的所述喂狗信号,根据所述喂狗信号确定所述BMC是否发生故障,如果是,则向所述风扇控制芯片发送触发指令;

所述风扇控制芯片,用于接收所述控制器发送的所述触发指令,根据所述触发指令,向所述待控制风扇发送第二控制信号,通过所述第二控制信号控制所述待控制风扇。

优选地,

所述控制器,用于确定当前时刻距离最近一次接收到所述喂狗信号的接收时刻的时间间隔,当所述时间间隔等于所述周期时,判断是否接收到所述BMC发送的所述喂狗信号,如果否,确定所述BMC发生故障。

优选地,

进一步包括:选通器;

所述选通器,包括:数据输出接口、控制接口和至少两个数据输入接口;其中,所述数据输出接口与所述待控制风扇相连,所述至少两个数据输入接口分别与所述BMC和所述风扇控制芯片相连,所述控制接口与所述控制器相连;

所述控制器,进一步用于当确定所述BMC发生故障时,向所述选通器发送切换指令;

所述风扇控制芯片,进一步用于向所述选通器发送所述第二控制信号;

在所述选通器接收到所述切换指令之前,所述BMC对应的所述数据输入接口与所述数据输出接口相连;

所述选通器,用于当接收到所述切换指令时,根据所述切换指令,将所述BMC对应的所述数据输入接口与所述数据输出接口断开,将所述风扇控制芯片对应的所述数据输入接口与所述数据输出接口相连,将所述第二控制信号发送给所述待控制风扇。

优选地,

所述风扇控制芯片,用于存储温度阈值,监测服务器的温度,判断所述服务器的温度是否大于所述温度阈值,如果是,向所述待控制风扇发送第三控制信号,通过所述第三控制信号提高所述待控制风扇的转速。

优选地,

所述选通器为4选1型数字选通器。

优选地,

进一步包括:I2C总线;

所述控制器通过所述I2C总线与所述风扇控制芯片相连,用于向所述风扇控制芯片发送所述触发指令。

优选地,

所述控制器的型号为STM32F103VCT6。

优选地,

所述风扇控制芯片的型号为MAX6639。

另一方面,本发明实施例提供了一种服务器散热控制方法,包括:

基板控制管理器BMC按照预设的周期,周期性地向控制器发送喂狗信号,向待控制风扇发送第一控制信号,通过所述第一控制信号控制所述待控制风扇;

所述控制器接收所述BMC发送的所述喂狗信号,根据所述喂狗信号确定所述BMC是否发生故障,如果是,则向所述风扇控制芯片发送触发指令;

所述风扇控制芯片接收所述控制器发送的所述触发指令,根据所述触发指令,向所述待控制风扇发送第二控制信号,通过所述第二控制信号控制所述待控制风扇。

优选地,

所述根据所述喂狗信号确定所述BMC是否发生故障,包括:

所述控制器根据所述喂狗信号,确定当前时刻距离最近一次接收到所述喂狗信号的接收时刻的时间间隔,当所述时间间隔等于所述周期时,判断是否接收到所述BMC发送的所述喂狗信号,如果否,确定所述BMC发生故障。

优选地,

在所述向所述风扇控制芯片发送触发指令之后,进一步包括:

所述控制器向选通器发送切换指令;

当接收到所述切换指令时,所述选通器根据所述切换指令,将所述BMC对应的所述选通器的数据输入接口与所述选通器的数据输出接口断开,将所述风扇控制芯片对应的所述选通器的数据输入接口与所述选通器的数据输出接口相连;

所述向所述待控制风扇发送第二控制信号,包括:

向所述选通器发送所述第二控制信号;所述选通器将所述第二控制信号发送给所述待控制风扇。

优选地,

所述风扇控制芯片预先存储温度阈值;

在向所述待控制风扇发送第二控制信号之后,进一步包括:

所述风扇控制芯片监测服务器的温度,判断所述服务器的温度是否大于所述温度阈值,如果是,向所述待控制风扇发送第三控制信号,通过所述第三控制信号提高所述待控制风扇的转速。

本发明实施例提供了一种服务器散热控制方法和系统,其中,BMC按照预设的周期向控制器发送喂狗信号,并向待控制风扇发送第一控制信号,通过第一控制信号控制待控制风扇;控制器接收BMC发送的喂狗信号,根据喂狗信号确定BMC是否发生故障,如果是,则向风扇控制芯片发送触发指令;风扇控制芯片接收控制器发送的触发指令,根据触发指令,向待控制风扇发送第二控制信号,通过第二控制信号控制待控制风扇。该方法可以使风扇控制芯片在BMC失效时,控制主板风扇,能够提高服务器的稳定性。

附图说明

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

图1是本发明一个实施例提供的一种服务器散热控制系统结构示意图;

图2是本发明一个实施例提供的另一种服务器散热控制系统结构示意图;

图3是本发明一个实施例提供的又一种服务器散热控制系统结构示意图;

图4是本发明一个实施例提供的一种服务器散热控制方法流程图;

图5是本发明一个实施例提供的另一种服务器散热控制方法流程图。

具体实施方式

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

如图1所示,本发明实施例提供了一种服务器散热控制系统,该系统可以包括:

BMC101、控制器102、风扇控制芯片103;

控制器102分别与BMC101、风扇控制芯片103、外部的待控制风扇104相连;

控制器102、BMC101和风扇控制芯片103,均与待控制风扇104相连;

BMC101,用于按照预设的周期,周期性地向控制器102发送喂狗信号,向待控制风扇104发送第一控制信号,通过第一控制信号控制待控制风扇104;

控制器102,用于接收BMC101发送的喂狗信号,根据喂狗信号确定BMC101是否发生故障,如果是,则向风扇控制芯片103发送触发指令;

风扇控制芯片103,用于接收控制器102发送的触发指令,根据触发指令,向待控制风扇104发送第二控制信号,通过第二控制信号控制待控制风扇104。

在图1所示的实施例中,当BMC101无法周期性地向控制器102发送喂狗信号,控制器102确定BMC101发生故障,触发风扇控制芯片103控制外部的待控制风扇104。该系统可以使风扇控制芯片在BMC101失效时,控制主板风扇,能够提高服务器的稳定性。

在本发明的一个实施例中,为了准确确定BMC101发生故障的时间,提高服务器的稳定性,控制器102,用于确定当前时刻距离最近一次接收到喂狗信号的接收时刻的时间间隔,当时间间隔等于周期时,判断是否接收到BMC101发送的喂狗信号,如果否,确定BMC101发生故障。

当BMC101正常运行时,BMC101会按照预设的周期向控制器102发送喂狗信号,但是BMC101发生故障后,无法向控制器102发送喂狗信号。例如,当BMC101正常运行时,控制器102每隔10s接收到BMC101发送喂狗信号,最近一次接收到喂狗信号的接收时刻为10:00:00,当前时刻为10:00:10,时间间隔为10s,等于周期,若10:00:10没有接收到BMC101发送的喂狗信号,则确定BMC101发生故障,否则,BMC101仍然正常运行。

在本发明的一个实施例中,为了便于BMC101和控制器102对待控制风扇104的控制,该服务器散热控制系统还包括:选通器105;如图2所示,以4选1型选通器105为例。选通器105,包括:数据输出接口1051、控制接口1052和三个数据输入接口1053。

数据输出接口1051与待控制风扇104相连,其中,两个数据输入接口1053分别与BMC101和风扇控制芯片103相连,控制接口1052与控制器102相连;

控制器102,进一步用于当确定BMC101发生故障时,向选通器105发送切换指令;

风扇控制芯片103,进一步用于向选通器105发送第二控制信号;

在选通器105接收到切换指令之前,BMC101对应的数据输入接口1053与数据输出接口相连1051;

选通器105,用于当接收到切换指令时,根据切换指令,将BMC101对应的数据输入接口1053与数据输出接口1051断开,将风扇控制芯片103对应的数据输入接口1053与数据输出接口1051相连,将第二控制信号发送给待控制风扇104。

选通器105通过不同的数据输入接口1053之间的切换,分别实现BMC101、控制器102的控制,操作简单,易于实现。

在本发明的一个实施例中,为了选通器可以包括:4选1型数字选通器、8选1型数字选通器、16选1型数字选通器。

在本发明的一个实施例中,为了根据服务器的温度合理控制待控制风扇104的转速,风扇控制芯片103,用于存储温度阈值,监测服务器的温度,判断服务器的温度是否大于温度阈值,如果是,向待控制风扇104发送第三控制信号,通过第三控制信号提高待控制风扇104的转速。

风扇控制芯片103除了用于控制待控制风扇104,还可以用于监控服务器的情况,例如服务器的温度。当风扇控制芯片103检测到异常情况时,通过输出引脚向待控制风扇104发送第三控制信号,用于提高待控制风扇104的转速,其中,第三控制信号可以包含电平信息。

温度阈值为服务器所允许的最大温度,例如,存储的温度阈值为90℃,监测到的服务器的温度为91℃,该温度大于90℃,向待控制风扇104发送第三控制信号。

在本发明的一个实施例中,为了使控制器102与风扇控制芯片103能顺利通信,控制器102通过I2C总线与风扇控制芯片103相连,用于向风扇控制芯片103发送触发指令。

在本发明的一个实施例中,控制器102的型号为STM32F103VCT6。

在本发明的一个实施例中,风扇控制芯片103的型号为MAX6639。

需要说明的是,控制器102除了上述的功能外,也可以用于控制待控制风扇104,此时,控制器102与选通器的一个数据输入接口1053相连,如图3所示,风扇控制芯片103主要用于监控服务器的温度,当温度超过温度阈值时,风扇控制芯片103可以向控制器102发送指令,以使控制器102通过选通器控制风扇的转速。

如图4所示,本发明实施例提供了一种服务器散热控制方法,该方法可以包括:

步骤401:BMC按照预设的周期,周期性地向控制器发送喂狗信号,向待控制风扇发送第一控制信号,通过第一控制信号控制待控制风扇;

步骤402:控制器接收BMC发送的喂狗信号,根据喂狗信号确定BMC是否发生故障,如果是,执行步骤403,否则,执行步骤404;

步骤403:向风扇控制芯片发送触发指令,执行步骤405;

步骤404:终止当前流程;

步骤405:风扇控制芯片接收控制器发送的触发指令,根据触发指令,向待控制风扇发送第二控制信号,通过第二控制信号控制待控制风扇。

在本发明的一个实施例中,根据喂狗信号确定BMC是否发生故障,包括:控制器根据喂狗信号,确定当前时刻距离最近一次接收到喂狗信号的接收时刻的时间间隔,当时间间隔等于周期时,判断是否接收到BMC发送的喂狗信号,如果否,确定BMC发生故障。

在本发明的一个实施例中,在向风扇控制芯片发送触发指令之后,还包括:控制器向选通器发送切换指令;

当接收到切换指令时,选通器根据切换指令,将BMC对应的选通器的数据输入接口与选通器的数据输出接口断开,将风扇控制芯片对应的选通器的数据输入接口与选通器的数据输出接口相连;

所述向所述待控制风扇发送第二控制信号,包括:

向所述选通器发送所述第二控制信号;所述选通器将所述第二控制信号发送给所述待控制风扇。

在本发明的一个实施例中,该方法还包括:风扇控制芯片预先存储温度阈值;在向待控制风扇发送第二控制信号之后,进一步包括:

风扇控制芯片监测服务器的温度,判断服务器的温度是否大于温度阈值,如果是,向待控制风扇发送第三控制信号,通过第三控制信号提高待控制风扇的转速。

如图5所示,本发明实施例以控制器为单片机为例,对服务器散热控制方法进行详细地说明,该方法包括:

步骤501:风扇控制芯片预先存储温度阈值。

温度阈值用于保证服务器正常工作所允许的最大温度,在本实施例中,存储的温度阈值为90℃。

步骤502:BMC按照预设的周期,周期性地向单片机发送喂狗信号,向待控制风扇发送第一控制信号,通过第一控制信号控制待控制风扇。

在本实施例中,预设的周期为10s。在BMC正常工作时,每10s向单片机发送喂狗信号,以使单片机能够监测BMC是否正常工作;并且,BMC向待控制风扇发送第一控制信号,通过第一控制信号控制待控制风扇,例如,控制风扇的转速。

步骤503:单片机接收BMC发送的喂狗信号,根据喂狗信号,确定当前时刻距离最近一次接收到喂狗信号的接收时刻的时间间隔。

接收BMC发送的喂狗信号,当前时刻为10:00:10,最近一次接收到喂狗信号的接收时刻为10:00:00,则时间间隔为10s。

该单片机实时确定当前时刻距离最近一次接收到喂狗信号的接收时刻的时间间隔。

步骤504:当时间间隔等于周期时,单片机判断是否接收到BMC发送的喂狗信号,如果是,执行步骤505,否则,执行步骤506。

最近一次接收到喂狗信号的接收时刻为10:00:00,当前时刻为10:00:10,时间间隔为10s,等于周期,若10:00:10没有接收到BMC101发送的喂狗信号,则确定BMC101发生故障,否则,BMC101仍然正常运行。

步骤505:终止当前流程。

步骤506:单片机向风扇控制芯片发送触发指令,向选通器发送切换指令。

该触发指令用于初始化该风扇控制芯片。

步骤507:当接收到切换指令时,选通器根据切换指令,将BMC对应的选通器的数据输入接口与选通器的数据输出接口断开,将风扇控制芯片对应的选通器的数据输入接口与选通器的数据输出接口相连。

当BMC正常工作时,BMC通过对应的数据输入接口与选通器的数据输出接口连接,进而控制待控制风扇。当BMC发生故障时,选通器接收到切换指令,风扇控制芯片对应的选通器的数据输入接口与选通器的数据输出接口相连,进而控制待控制风扇。

步骤508:风扇控制芯片接收控制器发送的触发指令,根据触发指令,向选通器发送第二控制信号,选通器将第二控制信号发送给待控制风扇,通过第二控制信号控制待控制风扇。

风扇控制芯片通过选通器向待控制风扇发送第二控制信号,进而控制待控制风扇。

步骤509:风扇控制芯片监测服务器的温度,判断服务器的温度是否大于温度阈值,如果是,执行步骤510,否则执行步骤505。

风扇控制芯片除了用于控制待控制风扇,还可以用于监控服务器的情况,例如服务器的温度。

在本实施例中,风扇控制芯片监测服务器的温度为99℃,大于温度阈值为90℃。

步骤510:向待控制风扇发送第三控制信号,通过第三控制信号提高待控制风扇的转速。

向待控制风扇发送第三控制信号,用于提高待控制风扇的转速。

综上,本发明各个实施例至少具有如下有益效果:

1、在本发明实施例中,BMC按照预设的周期向控制器发送喂狗信号,并向待控制风扇发送第一控制信号,通过第一控制信号控制待控制风扇;控制器接收BMC发送的喂狗信号,根据喂狗信号确定BMC是否发生故障,如果是,则向风扇控制芯片发送触发指令;风扇控制芯片接收控制器发送的触发指令,根据触发指令,向待控制风扇发送第二控制信号,通过第二控制信号控制待控制风扇。该方法可以使风扇控制芯片在BMC失效时,控制主板风扇,能够提高服务器的稳定性。

2、在本发明实施例中,当BMC正常工作时,BMC对应的数据输入接口与数据输出接口连接,进而控制待控制风扇;当BMC发生故障时,选通器根据切换指令,将风扇控制芯片对应的数据输入接口与数据输出接口相连,将第二控制信号发送给待控制风扇。选通器可以实现BMC控制到风扇控制芯片控制的切换,操作简单,易于实现。

3、在本发明实施例中,风扇控制芯片不仅可以用于控制待控制风扇,还可以监控服务器温度,当服务器温度过高时,可以通过提高待控制风扇的转速进而降低服务器温度。

上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。

需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。

最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

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