一种基于服务器的高可靠性风扇控制装置及方法 |
|||||||
申请号 | CN201710516618.7 | 申请日 | 2017-06-29 | 公开(公告)号 | CN107420336A | 公开(公告)日 | 2017-12-01 |
申请人 | 郑州云海信息技术有限公司; | 发明人 | 姜开永; 张燕群; | ||||
摘要 | 本 发明 提供一种基于 服务器 的高可靠性 风 扇控制方案,其系统结构包括风扇转速控 制芯 片,CPLD或FPGA。其中风扇转速控制芯片用来侦测对应的风扇转速以及系统 温度 ,并输出对应的风扇转速控制 信号 PWM(pulse width modulation),CPLD或者FPGA用来接收风扇转速控制芯片发出的PWM,内部做 算法 后再输出PWM信号到对应风扇。本发明通过简单的 硬件 设计和算法控制,即可以实现对服务器系统的风扇进行高可靠性控制。 | ||||||
权利要求 | 1.基于服务器的高可靠性风扇控制装置,用于控制N个风扇,其特征在于,包括N个风扇转速采集单元、系统温度采集单元、风扇转速控制单元、可编程ASIC单元,其中N个风扇转速采集单元与N个风扇一一对应,N个风扇转速采集单元用于侦测对应的N个风扇的转速,并分别产生PWM_TACH1~PWM_TACHn信号反馈至风扇转速控制单元;系统温度采集单元用于获取系统温度,并反馈至风扇转速控制单元;风扇转速控制单元根据PWM_TACH1~PWM_TACHn信号以及系统温度输出对应的风扇转速控制信号PWM1~PWMn到可编程ASIC单元,同时对风扇转速控制单元自身进行自检并产生健康状态脉冲指示信号HEARTBEAT,并传递给可编程ASIC单元;可编程ASIC单元根据接收到PWM1~PWMn信号,结合从风扇转速控制单元接收到的健康状态脉冲指示信号HEARTBEAT产生PWM_FAN1~PWM_FANn信号,用于分别控制N个风扇。 |
||||||
说明书全文 | 一种基于服务器的高可靠性风扇控制装置及方法技术领域[0001] 本发明涉及计算机服务器技术领域,具体涉及一种基于服务器的高可靠性风扇控制装置及方法。 背景技术[0002] 当今的服务器系统,采用集群多节点分布的拓扑越来越普遍,即多个服务器节点集合在一起,组建服务器集群,服务器集群运算任务要求越来越高,其对外部的散热响应能力越来越快,在完成大数据量高性能运算的同时,对外围的风扇调控设计提出的更高的需求,风扇调控需要兼顾实时响应能力、功耗大小、噪声控制;风扇调控的实时响应能力即要求在服务器节点温度快速升高时,能控制风扇尽快平稳提速,有效抑制服务器节点温度的上升;风扇调控中功耗大小控制,是要求在服务器节点运算任务降低,节点温度下降后,风扇可运行在低转速、低功耗的状态,风扇调控中的噪声控制是要求风扇平滑的加减速,避免速度大增量变化,产生噪音。在多服务器节点的集群系统中,风扇散热系统被所有服务器节点共用,风扇散热如何结合所有服务器节点的温度信息进行有效调控,成为当前多服务器节点系统中需要解决的难题;由于每个服务器节点的运算量、温度均不同,每个节点均对应不同的风速要求,若采用每个服务器单节点均可控制风扇调控,则风扇的调控会进入无序的混乱状态,无法形成有效的调控。今天,服务器集群整体功耗较大,在这种情况下,保证服务器多节点集群系统散热的高效率、智能设计,对于服务器多节点系统的稳定性具有重要的意义。 [0003] 目前在服务器系统中,随着服务器产品的密度越来越高,单位密度功耗越来越大,对服务器散热风扇控制的要求就越来越严苛。通常的做法是服务器系统中的风扇转速控制芯片对风扇进行直接控制,但是如果风扇转速控制芯片出现问题,整个服务器系统的风扇控制就会出现异常,散热无法保证,就可能会导致宕机或异常关机以及数据丢失的问题。因此如何能够确保服务器系统中风扇转速控制芯片出现问题时,可正常控制风扇转速确保散热就变得极为重要。 发明内容[0004] 为解决上述技术问题,本发明提供是一种基于服务器的高可靠性风扇控制方案,具体如下: [0005] 第一方面,本发明提供一种基于服务器的高可靠性风扇控制装置,用于控制N个风扇,包括N个风扇转速采集单元、系统温度采集单元、风扇转速控制单元、可编程ASIC(Application Specific Integrated Circuits,专用集成电路)单元,其中N个风扇转速采集单元与N个风扇一一对应,N个风扇转速采集单元用于侦测对应的N个风扇的转速,并分别产生PWM_TACH1~PWM_TACHn信号反馈至风扇转速控制单元;系统温度采集单元用于获取系统温度,并反馈至风扇转速控制单元;风扇转速控制单元根据PWM_TACH1~PWM_TACHn信号以及系统温度输出对应的风扇转速控制信号PWM1~PWMn到可编程ASIC单元,同时对风扇转速控制单元自身进行自检并产生健康状态脉冲指示信号 [0006] HEARTBEAT,并传递给可编程ASIC单元;可编程ASIC单元根据接收到[0007] PWM1~PWMn信号,结合从风扇转速控制单元接收到的健康状态脉冲指示信号HEARTBEAT产生PWM_FAN1~PWM_FANn信号,用于分别控制N个风扇。 [0008] 进一步的,可编程ASIC单元根据接收到PWM1~PWMn信号,结合从风扇转速控制单元接收到的健康状态脉冲指示信号HEARTBEAT产生 [0009] PWM_FAN1~PWM_FANn信号具体为: [0010] 当HEARTBEAT为正常的脉冲信号时,可编程ASIC单元判断风扇转速控制单元处于健康状态,正常输出其PWM信号,此时PWM_FAN1~PWM_FANn信号与PWM1~PWMn信号相同; [0011] 当HEARTBEAT为恒高或恒低信号时,可编程ASIC单元判断风扇转速控制单元处于异常状态,此时PWM_FAN1~PWM_FANn均等于PWM_MAX,其中PWM_MAX为风扇处于全速工作时的PWM信号为或按照设计需求设计的PWM信号。 [0012] 进一步的,风扇转速控制单元为风扇转速控制芯片。 [0013] 进一步的,可编程ASIC单元为CPLD或FPGA。 [0014] 进一步的,基于服务器的高可靠性风扇控制装置还包括指示单元,用于在风扇转速控制单元处于异常状态时发出提示。 [0015] 进一步的,指示单元可以是LED或扬声器。 [0016] 第二方面,本发明提供一种基于服务器的高可靠性风扇控制方法,用于控制N个风扇,包括 [0017] SS1:侦测N个风扇的转速,并分别产生PWM_TACH1~PWM_TACHn信号; [0018] SS2:获取系统温度, [0019] SS3:风扇转速控制单元根据PWM_TACH1~PWM_TACHn信号以及系统温度输出对应的风扇转速控制信号PWM1~PWMn,同时对自身进行自检并产生健康状态脉冲指示信号HEARTBEAT; [0020] SS4:根据接收到PWM1~PWMn信号,结合从风扇转速控制单元接收到的健康状态脉冲指示信号HEARTBEAT产生PWM_FAN1~PWM_FANn信号,用于分别控制N个风扇。 [0021] 进一步的,步骤SS4具体包括: [0022] 当HEARTBEAT为正常的脉冲信号时,判断风扇转速控制单元处于健康状态,正常输出其PWM信号,此时PWM_FAN1~PWM_FANn信号与PWM1~PWMn信号相同; [0023] 当HEARTBEAT为恒高或恒低信号时,判断风扇转速控制单元处于异常状态,此时PWM_FAN1~PWM_FANn均等于PWM_MAX,其中PWM_MAX为风扇处于全速工作时的PWM信号为或按照设计需求设计的PWM信号。 [0024] 进一步的,基于服务器的高可靠性风扇控制方法还包括: [0025] SS5:在风扇转速控制单元处于异常状态时发出提示。 [0026] 进一步的,指示单元可以是LED或扬声器。 [0028] 图1示出本发明基于服务器的高可靠性风扇控制装置的结构框图。 [0029] 图2示出本发明基于服务器的高可靠性风扇控制装置的信号连接示意图。 具体实施方式[0031] 图1为本发明一个实施例的基于服务器的高可靠性风扇控制装置的结构框图,图2示出本发明基于服务器的高可靠性风扇控制装置的信号连接示意图。 [0032] 如图1、图2所示,根据本发明实施例的基于服务器的高可靠性风扇控制装置,用于控制N个风扇,包括N个风扇转速采集单元、系统温度采集单元、风扇转速控制单元、可编程ASIC(Application Specific Integrated Circuits,专用集成电路)单元,其中N个风扇转速采集单元与N个风扇一一对应, [0033] N风扇转速采集单元用于侦测对应的N个风扇的转速,并分别产生PWM_TACH1~PWM_TACHn信号反馈至风扇转速控制单元; [0034] 系统温度采集单元用于获取系统温度,并反馈至风扇转速控制单元; [0035] 风扇转速控制单元根据PWM_TACH1~PWM_TACHn信号以及系统温度输出对应的风扇转速控制信号PWM1~PWMn到可编程ASIC单元,同时对风扇转速控制单元自身进行自检并产生健康状态脉冲指示信号HEARTBEAT,并传递给可编程ASIC单元; [0036] 可编程ASIC单元根据接收到PWM1~PWMn信号,结合从风扇转速控制单元接收到的健康状态脉冲指示信号HEARTBEAT产生PWM_FAN1~PWM_FANn信号,用于分别控制N个风扇。 [0037] 根据本发明的一实施例,可编程ASIC单元根据接收到PWM1~PWMn信号,结合从风扇转速控制单元接收到的健康状态脉冲指示信号HEARTBEAT产生PWM_FAN1~PWM_FANn信号具体为: [0038] 当HEARTBEAT为正常的脉冲信号时,可编程ASIC单元判断风扇转速控制单元处于健康状态,正常输出其PWM信号,此时PWM_FAN1~PWM_FANn信号与PWM1~PWMn信号相同; [0039] 当HEARTBEAT为恒高或恒低信号时,可编程ASIC单元判断风扇转速控制单元处于异常状态,此时PWM_FAN1~PWM_FANn均等于PWM_MAX,其中PWM_MAX为风扇处于全速工作时的PWM信号为或按照设计需求设计的PWM信号,以确保散热正常。 [0040] 根据本发明的一实施例,风扇转速控制单元为风扇转速控制芯片。 [0041] 根据本发明的一实施例,可编程ASIC单元为CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)或FPGA(Field-Programmable Gate Array,现场可编程门阵列)。 [0042] 根据本发明的一实施例,基于服务器的高可靠性风扇控制装置还包括指示单元,指示单元用于在风扇转速控制单元处于异常状态时发出提示,以提醒进行设备的维修。 [0043] 根据本发明的一实施例,指示单元可以是LED或扬声器。 [0044] 此外本发明还提供一种对应基于服务器的高可靠性风扇控制方法,包括: [0045] SS1:侦测N个风扇的转速,并分别产生PWM_TACH1~PWM_TACHn信号; [0046] SS2:获取系统温度, [0047] SS3:风扇转速控制单元根据PWM_TACH1~PWM_TACHn信号以及系统温度输出对应的风扇转速控制信号PWM1~PWMn,同时对自身进行自检并产生健康状态脉冲指示信号HEARTBEAT; [0048] SS4:根据接收到PWM1~PWMn信号,结合从风扇转速控制单元接收到的健康状态脉冲指示信号HEARTBEAT产生PWM_FAN1~PWM_FANn信号,用于分别控制N个风扇。 [0049] 根据本发明的一实施例,步骤SS4具体包括: [0050] 当HEARTBEAT为正常的脉冲信号时,判断风扇转速控制单元处于健康状态,正常输出其PWM信号,此时PWM_FAN1~PWM_FANn信号与PWM1~PWMn信号相同; [0051] 当HEARTBEAT为恒高或恒低信号时,判断风扇转速控制单元处于异常状态,此时PWM_FAN1~PWM_FANn均等于PWM_MAX,其中PWM_MAX为风扇处于全速工作时的PWM信号为或按照设计需求设计的PWM信号,以确保散热正常。 [0052] 根据本发明的一实施例,风扇转速控制单元为风扇转速控制芯片。 [0053] 根据本发明的一实施例,方法还包括: [0054] SS5:在风扇转速控制单元处于异常状态时发出提示。 [0055] 根据本发明的一实施例,指示单元可以是LED或扬声器。 [0056] 采用本发明,即可以通过简单的硬件设计和算法控制,确保风扇转速控制芯片处于异常状态时,服务器系统不会出现散热问题,实现对服务器系统风扇的高可靠性控制。 [0057] 尽管在装置的上下文中已描述了一些方面,但明显的是这些方面也表示对应方法的描述,其中块或设备与方法步骤或方法步骤的特征相对应。类似地,在方法步骤的上下文中所描述的各方面也表示对应的块或项目或者对应装置的特征的描述。可以通过(或使用)如微处理器、可编程计算机、或电子电路之类的硬件装置来执行方法步骤中的一些或所有。可以通过此类装置来执行最重要的方法步骤中的某一个或多个。 [0058] 所述实现可以采用硬件或采用软件或可以使用例如软盘、DVD、蓝光、CD、ROM、PROM、EPROM、EEPROM、或闪存之类的具有被存储在其上的电子可读控制信号的数字存储介质来执行,所述电子可读控制信号与可编程计算机系统配合(或能够与其配合)以使得执行相应的方法。可以提供具有电子可读控制信号的数据载体,所述电子可读控制信号能够与可编程计算机系统配合以使得执行本文所描述的方法。 [0059] 所述实现还可以采用具有程序代码的计算机程序产品的形式,当计算机程序产品在计算机上运行时,程序代码进行操作以执行该方法。可以在机器可读载体上存储程序代码。 |