掌桥专利:专业的专利平台
掌桥专利
首页

电源故障的告警方法及装置

文献发布时间:2023-06-19 18:27:32


电源故障的告警方法及装置

技术领域

本申请涉及计算机技术领域,尤其涉及一种电源故障的告警方法及装置。

背景技术

公开于该背景技术部分的信息仅仅旨在增加对本发明的总体背景的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域一般技术人员所公知的现有技术。

故障的可定位性是服务器面向产品生命周期各环节的设计(Design for X,DFX)中的一个重要指标。随着器件和部件的演进、各类负载电源的增加和性能提升的要求,服务器中电源数量日益增加。对于电源故障的准确上报是服务器维护的迫切需求。

目前,现存商用服务器中电源故障上报机制一般采用上报单板管理控制器(Baseboard Management Controller,BMC)的方式,难以满足实际应用中的更高要求,如希望降低故障上报的延迟,故障定位更加精准、全面等。

发明内容

本申请实施例提供了一种电源故障的告警方法及装置,能够利用CPLD器件对服务器电源故障进行精细化告警,故障定位精准、覆盖全面且易于识别,故障显示的延迟降低。

第一方面,本申请实施例提供了一种电源故障的告警装置,包括:

电源模块,与复杂可编辑逻辑器件CPLD模块连接,用于将服务器中各个电源的信号发送至CPLD模块;CPLD模块,用于在根据信号判断出发生电源故障的情况下,基于预先设定的指示不同电源类别的多个类别码,以及指示各个电源类别下不同故障类型的多个故障码,确定电源故障对应的目标类别码和目标故障码;显示模块,与CPLD模块连接,用于对目标类别码和目标故障码进行可视化提示。

在本方案中,可以实现将电源故障进行分类划分、按类显示,利用CPLD实现对电源故障进行精细化告警。

在一种可能的实现方式中,电源模块包括各个电源芯片及其外围电路。

这样,可以实现对服务器中电源的全覆盖监控。

在一种可能的实现方式中,各个电源的信号包括PG信号和/或EN信号。

这样,可以实现对电源信号的全面监控。

在一种可能的实现方式中,CPLD模块还用于基于预先设定的指示不同电源域的多个域码,确定电源故障对应的目标域码;显示模块还用于对目标域码进行可视化提示。

这样,可以实现对电源故障进行更多层级的定位。

在一种可能的实现方式中,显示模块包括多个数码管;CPLD模块还用于根据目标类别码和目标故障码生成针对多个数码管的位选信号和段选信号;显示模块具体用于根据位选信号和段选信号,控制多个数码管显示目标类别码和目标故障码。

这样,通过利用数码管显示电源故障类别,可以使得可视化方案简单、直观、便于识别,且编码兼容不宜乱码。

进一步,在一些可能的实施例中,电源故障包括多个故障,目标类别码和目标故障码包括与多个故障对应的多组类别码-故障码;CPLD模块还用于根据预先设定的优先级规则,确定多组类别码-故障码的显示顺序;显示模块具体还用于控制多个数码管按照显示顺序,显示多组类别码-故障码。

这样,可以实现对多电源故障按优先级排序显示。

在一种可能的实现方式中,电源故障包括多个故障,目标类别码包括若干类别码;显示模块还包括与多个类别码具有相同数量的多个提示灯;显示模块具体用于控制多个提示灯同时对若干类别码进行亮灯提示。

这样,可以同时提示多电源故障的电源类型,便于用户识别。

在一种可能的实现方式中,CPLD模块还用于反馈控制信号给电源模块。

这样,可以帮助保护电源和单板。

在一种可能的实现方式中,CPLD模块还用于在根据信号判断出服务器系统在预设时长内没有完成上电动作的情况下,控制电源模块关闭PS_ON信号。

在一种可能的实现方式中,CPLD模块还用于在根据信号判断出服务器系统异常掉电的情况下,控制电源模块关闭PS_ON信号。

这样,可以实现对单板的保护。

第二方面,本申请实施例提供了一种电源故障的告警方法,方法的执行主体为复杂可编辑逻辑器件CPLD模块,包括:

从电源模块接收服务器中各个电源的信号;在根据信号判断出发生电源故障的情况下,基于预先设定的指示不同电源类别的多个类别码,以及指示各个电源类别下不同故障类型的多个故障码,确定电源故障对应的目标类别码和目标故障码;控制显示模块对目标类别码和目标故障码进行可视化提示。

在一种可能的实现方式中,各个电源的信号包括PG信号和/或EN信号。

在一种可能的实现方式中,方法还包括:基于预先设定的指示不同电源域的多个域码,确定电源故障对应的目标域码;控制显示模块对目标域码进行可视化提示。

在一种可能的实现方式中,显示模块包括多个数码管;方法还包括:根据目标类别码和目标故障码生成针对多个数码管的位选信号和段选信号;控制显示模块对目标类别码和目标故障码进行可视化提示,包括:根据位选信号和段选信号,控制多个数码管显示目标类别码和目标故障码。

进一步,在一些可能的实施例中,电源故障包括多个故障,目标类别码和目标故障码包括与多个故障对应的多组类别码-故障码;方法还包括:根据预先设定的优先级规则,确定多组类别码-故障码的显示顺序;控制显示模块对目标类别码和目标故障码进行可视化提示,包括:控制显示模块中的多个数码管按照显示顺序,显示多组类别码-故障码。

在一种可能的实现方式中,电源故障包括多个故障,目标类别码包括若干类别码;显示模块还包括与多个类别码具有相同数量的多个提示灯;方法还包括:控制显示模块具体使用多个提示灯同时对若干类别码进行亮灯提示。

在一种可能的实现方式中,方法还包括:反馈控制信号给电源模块。

在一种可能的实现方式中,方法还包括:在根据信号判断出服务器系统在预设时长内没有完成上电动作的情况下,控制电源模块关闭PS_ON信号。

在一种可能的实现方式中,方法还包括:在根据信号判断出服务器系统异常掉电的情况下,控制电源模块关闭PS_ON信号。

第二方面提供的告警方法中各种可能的实现方式能够达到的有益效果,请参考对第一方面提供的告警装置中可能实现方式所能达到的有益效果的描述,在此不作赘述。

附图说明

图1是一种基于BMC实施的电源监控方案的架构示意图;

图2是本申请实施例提供的一种电源故障的告警装置的结构示意图;

图3是本申请实施例提供的一种电源故障的告警方法的步骤流程图;

图4是本申请实施提供的一种电源故障告警的具体应用的流程示意图。

具体实施方式

为了使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图,对本申请实施例中的技术方案进行描述。

在本申请实施例的描述中,“示例性的”、“例如”或者“举例来说”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”、“例如”或者“举例来说”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”、“例如”或者“举例来说”等词旨在以具体方式呈现相关概念。

在本申请实施例的描述中,术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,单独存在B,同时存在A和B这三种情况。另外,除非另有说明,术语“多个”的含义是指两个或两个以上。例如,多个类别码是指两个或两个以上的类别码,多个故障码是指两个或两个以上的故障码。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。

承前所述,现存商用服务器中电源故障上报机制一般采用上报BMC的方式。图1是一种基于BMC实施的电源监控方案的架构示意图,如图1所示,平台控制单元(PlatformController Hub,PCH)通过电源管理总线(Power Management Bus,PMBUS)信号与电源模块相连,用于获取电源模块的监控信息;BMC管理器通过内部集成电路(Inter-IntegratedCircuit,I

对于图1示出的方案,存在误报警的情况,如果电源模块正常在位,但是PMBUS信号由于某些原因发生了异常,会导致产生电源不在位的误报警,进而产生整个电源模块异常的误报警。然而这种报警不是电源模块发生的故障,会给客户及运维人员带来很大的困扰。该方案采用BMC管理器监管电源故障,然而BMC管理器的显示不是实时的,如需实时显示则耗电需求也比较高。

另外,在电源种类多、各级电源多的情况下,故障告警存在精准定位难、覆盖不全面等问题。

基于此,本发明实施例提出了电源故障的告警方案,在该方案中,预先对电源类别和故障类型进行划分,利用复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD)对电源故障进行告警,解决了故障告警延时高、不易精准定位、覆盖不全面的问题,实现了对电源故障进行实时、精细化告警。这里仅仅是对方案的简述,关于该方案的详细内容参见下文中对告警装置和告警方法的描述。

图2是本申请实施例提供的一种电源故障的告警装置的结构示意图。如图2所示,告警装置包括电源模块210、CPLD模块220和显示模块230。

电源模块210中包括各个电源芯片及其外围电路。需要理解的是,电源芯片,又称电源管理芯片(Power Management Integrated Circuits),是在电子设备系统中担负起对电能的变换、分配、检测及其他电能管理的职责的芯片,主要负责将源电压和电流转换为可由微处理器、传感器等负载使用的电源。常用电源管理芯片有LMG3410R050、UCC12050、BQ25790、HIP6301、IS6537、RT9237、ADP3168、KA7500和TL494等。外围电路可以包括电阻等元器件,起到热过载保护、降低高频噪声等作用。

电源模块210与CPLD模块220连接,用于将服务器中各个电源的信号发送给CPLD模块。

在一些实施例中,各个电源的信号包括PG信号。PG信号是Power Good信号的简称,或记作P.G.信号,又称P.OK信号。简单地说,PG信号就是电源告诉主板它是好的,通常主板收到这个信号后延时数百毫秒开始工作。PG信号非常重要,即使电源的各路直流输出都正常,如果没有PG信号,主板还是没法工作。如果PG信号的时序不对,可能会造成无法开机。

在一些实施例中,各个电源的信号包括EN信号。EN是enable的简写,表示使能,就是使每个模块或电路能够工作,一般是用来开启芯片工作的一个信号。

以上,主要介绍电源模块210,接下来介绍与之连接的CPLD模块220。

CPLD模块220包括CPLD器件。CPLD器件是一种支持用户根据需要自行构造逻辑功能的数字集成电路,其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过将代码传送到目标芯片中,实现设计的数字系统。

CPLD模块220接收来自电源模块210的信号,并对其进行一系列处理后输出控制信号给电源模块210和/或显示模块230。

在一些实施例中,CPLD模块220反馈控制信号给电源模块210,起到保护电源模块210的作用。例如,CPLD模块220在判断出上电异常的情况下反馈控制信号给电源模块210,达到保护单板的目的。需理解,上电异常可以分为两类:上电超时和异常掉电。上电超时是指从电源输出PS_ON(POWER Supply-ON)信号到单板上的所有电源状态正常超过预设时长(如500ms),异常掉电是指单板已经正常上电,运行过程中突然有某个电源的PG信号丢失,而使能信号EN还在。

示例性地,CPLD模块220根据电源模块210发送的信号判断出服务器系统在预设时长(如512ms)内没有完成上电动作,此时,CPLD模块220认为系统上电超时,逻辑会主动关闭PS_ON信号,达到保护单板的目的。

示例性地,CPLD模块220根据电源模块210发送的信号判断出服务器系统异常掉电,此时,CPLD模块220会主动关闭PS_ON信号,达到保护单板的目的。

另一方面,CPLD模块220用于在根据各个电源的信号判断出发生电源故障的情况下,基于预先设定的指示不同电源类别的多个类别码,以及指示各个电源类别下不同故障类型的多个故障码,确定出电源故障对应的目标类别码和目标故障码。

需要说明的是,根据电源信号分析、判断某一路电源是否发生故障,可以采用已有技术实现,不作赘述。

另外,可以预先将服务器所有可能发生的电源故障按不同层级进行划分,使得CPLD模块220可以确定电源故障对应不同层级的定位码,从而实现对电源故障类型的精准定位。

在一些实施例中,可以将服务器中所有电源按照类型分为多个大类,每个大类采用不同的类别码(或简称类码)表示。示例性地,可以将所有电源的故障分为四类:待机状态(Standby,STBY)域电源、板级电源、CPU VRs电源和双列直插内存模块(Dual InlineMemory Module,DIMM)电源,分别采用四个类码S,P,C,D表示。其中板级电源可以包括vcc12v,vcc5v,vcc3v3以及vccDRMOS等。

进一步,可以将每个大类(即每个电源类型)中可能会发生的电源故障细化为多个小类,每个小类分别采用不同的故障码表示。

基于此,CPLD模块220可以通过确定电源故障对应的目标类别码和目标故障码,实现对电源故障类型的精准定位。

在一些实施例中,还可以利用域码定位故障类型,具体地,先将服务器中所有电源按照电源域(power domian)划分到多个电源域,每个电源域采用不同的域码表示。需要理解的是,每一个电源域可以简单视作供电逻辑的划分,在该逻辑划分中既包含了设计的物理实体(module)同时也包含了电源线间的连接关系。

进一步,将每个电源域中的电源按照不同电平划分为多个大类,每个大类采用不同的类别码表示;再将每个大类中可能会发生的电源故障细化为多个小类,每个小类分别采用不同的故障码表示。

基于此,CPLD模块220可以通过确定电源故障对应的定位码,如目标类码和目标故障码,或者,目标域码、目标类别码和目标故障码,实现对电源故障类型的精准定位。

在一些实施例中,CPLD模块220在判断出电源故障是多电源故障时,除了确定各个电源故障对应的一组定位码,还确定多组定位码的显示顺序。在一些具体的实施例中,可以根据预先设定的优先级确定显示顺序。在一个例子中,基于为划分好的多个类码预先设定的不同优先级,确定多电源故障所涉及若干类码的优先级顺序。类似地,还可以确定多电源故障所涉及各个类码下不同故障码的优先级顺序,和/或,多电源故障所涉及若干域码的优先级顺序。如此,可以实现多类故障按优先级排序显示。

在另一些具体的实施例中,可以根据定位码之间的相对大小,确定上述多组定位码的显示顺序。在一个例子中,对于多组定位码,优先按域码从小到大排列,再按类码由小到大排列,最后按故障码从小到大排列。

示例性的,多组定位码中每组定位码包括类码和故障码,先按照类码的优先级确定显示顺序,在某个类码下包含多个故障码的情况下,按照故障码进行从小到大的排序。由此,可以确定出多组定位码的显示顺序。

如此,CPLD模块220可以确定同时期发生的多个电源故障所对应多组定位码的显示顺序。

基于以上确定出的用于定位电源故障类型的目标类码和目标故障码等目标定位码,CPLD模块220还控制显示模块230对该该目标定位码进行可视化提示。

在一些实施例中,显示模块230包括多个数码管,此时,CPLD模块220还用于根据目标类别码和目标故障码生成针对多个数码管的位选信号和段选信号,或者说位选编码和段选编码,从而,显示模块230可以根据该位选信号和段选信号,控制多个数码管显示目标类别码和目标故障码。

需要理解的是,位选(bit selection)编码用于在多个数码管中选择某个数码管。通常,一个数码管中有8个段,每个段都是一个发光二极管(light-emitting diode,LED)灯,段选(segment selection)即选择一个数码管中要点亮的LED灯。

对于多个数码管的个数,以及其中哪几个用于显示类别码,哪几个用于显示故障码,是可以根据类别码和故障码的总数预先分配、设定的。

下面通过假定显示模块230包括两个数码管,其中之一用于显示目标类别码,另一个用于显示目标故障码,进行示例性描述。

进一步假定服务器中所有电源被分为四大类,其中各类对应的位选编码和段选编码如下表1所示。

表1

表1中的位选编码01表示选择两个数码管中的第1个数码管显示类码,不同类码具有不同段选编码。

基于此,CPLD模块220可以按照表1示出的方式,对目标类码进行编码,例如,假定目标类码是P,此时,可以生成其对应的位选信号01和段选信号P2。

假定类码P下对应的故障码包括1至e,其中各个故障码对应的位选编码和段选编码如下表2所示,其中共阴极和共阳极是指数码管中二极管单元的连接方式。

表2

基于此,CPLD模块220可以按照表2示出的方式,确定目标故障码的位选编码和段选编码,例如,假定目标故障码是9,此时,可以生成其对应的位选信号10,以及段选信号h6f/01101111或h10/10010000。

相应地,显示模块230可以从CPLD模块220接收位选信号和段选信号,从而控制多个数码管显示相应的目标类码和目标故障码。

在上述示例中,主要对利用数码管显示目标类码和目标故障码进行介绍。

在一些实施例中,在多电源故障的情况下,CPLD模块220确定出的目标类码和目标故障码包括多组类码-故障码,此时,在一些更具体的实施例中,显示模块230还可以根据从CPLD模块220接收的显示顺序,控制多个数码管对多组类码-故障码进行动态顺序显示。示例性的,单组类码-故障码的显示时长可以预先设定,如设定为1s等。

在另一些更具体的实施例中,显示模块230可以利用多组数码管,对多组类码-故障码同时进行显示。例如,显示模块230中包括4个数码管,被划分为两组,可以同时显示两组类码-故障码。

在一些实施例中,CPLD模块220还用于根据目标域码生成多个数码管的位选信号和段选信号。此时,显示模块230还可以控制数码管显示目标域码。

在一些实施例中,显示模块230中还包括与可能的类码具有相同数量的多个指示灯(或称提示灯),在多电源故障的情况下,可以控制多个指示灯同时显示多个目标类码。示例性的,指示灯可以是LED灯。如此,可以通过前端LED实现显示交互。

在一些实施例中,显示模块230中还包括与可能的域码具有相同数量的多个指示灯,在多电源故障的情况下,可以同时显示多个目标域码。

综上,采用本说明书实施例提供的电源故障的告警装置,可以实现的有益效果主要包括:1)精准故障告警,利用记忆无需手册对比,便于问题定位;2)流程清晰,覆盖各类故障情况;3)可视化方案简单,便于识别,编码兼容不易乱码;4)故障显示延迟较低,便于维护人员及时处理。

接下来,结合上述提供的电源故障的告警装置,对本发明实施例提供的一种电源故障的告警方法进行详细介绍。图3是本申请实施例提供的一种电源故障的告警方法的步骤流程图,告警方法的执行主体为图2中示出的CPLD模块220。如图3所示,本申请实施例提供的电源故障的告警方法包括如下步骤:

步骤S310,从电源模块210接收服务器中各个电源的信号。

在一些实施例中,各个电源的信号包括PG信号和/或EN信号。

步骤S320,在根据信号判断出发生电源故障的情况下,基于预先设定的指示不同电源类别的多个类别码,以及指示各个电源类别下不同故障类型的多个故障码,确定电源故障对应的目标类别码和目标故障码。

步骤S330,控制显示模块230对目标类别码和目标故障码进行可视化提示。

在一些实施例中,在步骤S330之前,告警方法还包括:基于预先设定的指示不同电源域的多个域码,确定电源故障对应的目标域码;相应,步骤S330还可以包括:控制显示模块230对目标域码进行可视化提示。

在一些实施例中,显示模块230包括多个数码管;步骤S320中还可以包括:根据目标类别码和目标故障码生成针对多个数码管的位选信号和段选信号;步骤S330中还可以包括:根据位选信号和段选信号,控制多个数码管显示目标类别码和目标故障码。

在一些实施例中,CPLD模块220判断出发生的电源故障为多个故障,相应,确定出的目标类别码和目标故障码包括与多个故障对应的多组类别码-故障码。基于此,步骤S320中还可以包括:根据预先设定的优先级规则,确定多组类别码-故障码的显示顺序;步骤S330中还可以包括:控制多个数码管按照显示顺序,显示多组类别码-故障码。

在一些实施例中,CPLD模块220判断出发生的电源故障为多个故障,步骤S320中确定出的目标类别码包括若干类别码;显示模块230还包括与多个类别码具有相同数量的多个提示灯。基于此,步骤S330中还包括:控制多个提示灯同时对若干类别码进行亮灯提示。

在一些实施例中,在步骤S310之后,告警方法还可以包括:向电源模块210反馈控制信号,以保护电源模块210。

在一些实施例中,在步骤S310之后,告警方法还可以包括:在根据电源信号判断出服务器系统在预设时长内没有完成上电动作的情况下,控制电源模块210关闭PS_ON信号。如此,可以保护单板。

在一些实施例中,在步骤S310之后,告警方法还可以包括:在根据电源信号判断出服务器系统异常掉电的情况下,控制电源模块210关闭PS_ON信号。

基于上述提供的电源故障的告警方法,对告警方法的具体的应用进行说明。在一个具体应用中,利用CPLD对电源故障进行精细化告警,用两个数码管显示具体故障类型。可将服务器中所有电源按照类型划分为n个大类,每个大类分别采用不同的类码表示,第一个数码管用于显示类码;再将每个大类中可能会发生的电源故障细化为m个小类,每个小类分别采用不同的故障码表示,第二个数码管用于显示故障码。其中n和m均为正整数。按照以上,即可通过类码和故障码精确的定位每个电源故障的类型。

进一步,图4是本申请实施提供的一种电源故障告警的具体应用的流程示意图。如图4所示,当电源发生故障时:

1)若是单电源故障发生,则先判断该故障类型对应的类码,再判断故障码,经过编码后(共阳数码管用共阳极编码,共阴极数码管用共阴极编码),通过对数码管位选和段选的方式在两个数码管中分别显示类码和故障码。

2)若是多电源故障发生,则先判断对应的类码有哪些,再按类码的优先级确定显示顺序,若对于一个确定的类码有多个故障发生,则按照其故障码从小到大的顺序显示。按照以上确定完当前要显示的类码和故障码以后,按照单电源故障发生的流程显示k秒(例如1s),再关闭位选,切换至下一组类码和故障码进行显示。需要理解,在进行位选编码时可能涉及分频操作,辅助实现对不同数码管的选择。

在上述具体应用中,实现了将电源故障按类划分、按类显示;实现了电源精细化告警;实现了多类故障按优先级排序显示;通过数码管实现显示交互。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

以上结合具体实施例描述了本申请的基本原理,但是,需要指出的是,在本申请中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。

本公开中涉及的器件、装置的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。

还需要指出的是,在本公开的装置和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。

为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

可以理解的是,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。

技术分类

06120115578167