CN116010141A - 一种多路服务器启动异常定位方法、装置及其介质 - Google Patents
一种多路服务器启动异常定位方法、装置及其介质 Download PDFInfo
- Publication number
- CN116010141A CN116010141A CN202211619536.2A CN202211619536A CN116010141A CN 116010141 A CN116010141 A CN 116010141A CN 202211619536 A CN202211619536 A CN 202211619536A CN 116010141 A CN116010141 A CN 116010141A
- Authority
- CN
- China
- Prior art keywords
- cpu
- abnormal
- clock
- abnormality
- gpio
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本申请公开一种多路服务器启动异常定位方法、装置及其介质,涉及服务器启动检测技术领域,用于检测多路服务器的启动异常,针对目前的启动故障方法繁琐耗时的问题,通过总线或GPIO对CPU的powergood信号或电源域电压进行检测以判断电源是否异常;对时钟状态寄存器中的时钟信息进行读取以判断时钟是否异常;对CPU的解复位OK信号或外部给到所述CPU的复位控制信号进行检测以判断CPU复位是否异常;对互联状态寄存器中的状态位进行读取以判断CPU互联状态是否异常;对内存训练状态寄存器中的状态位进行读取以判断内存训练是否异常,无需人工对CPU进行串口打印以定位异常原因,效率更高。
Description
技术领域
本申请涉及服务器启动检测技术领域,特别是涉及一种多路服务器启动异常定位方法、装置及其介质。
背景技术
在服务器产品中,多路服务器因为由多颗中央处理器(Central ProcessingUnit,CPU)组成,且涉及到多颗CPU间的协作,因此在开发设计以及生产维护中,相比于普通的单路服务器要更为复杂。当出现启动异常等故障时,定位难度也更高。
目前,当出现不能正常开机等异常时,通常通过串口线、万用表、示波器等工具,去依次检测各个CPU的串口打印,并测量电源、时钟、复位、互联、内存、等模块,而每个模块通常又有很多小的模块,如多个电源域、时钟域、多级复位、互联链路、多个内存槽位等。因此,出现无法开机等问题时,定位是比较繁琐费时的。
所以,现在本领域的技术人员亟需要一种多路服务器启动异常定位方法,解决目前的启动故障方法繁琐耗时的问题。
发明内容
本申请的目的是提供一种多路服务器启动异常定位方法、装置及其介质,目的。
为解决上述技术问题,本申请提供一种多路服务器启动异常定位方法,包括:
通过总线或GPIO检测CPU的power good信号或电源域电压,以确定所述CPU的电源是否异常;
通过总线或GPIO读取所述CPU的时钟状态寄存器中的时钟信息判断各个时钟域是否正常提供,以确定所述CPU的时钟是否异常;
通过总线或GPIO检测所述CPU的解复位OK信号或外部给到所述CPU的复位控制信号,以确定所述CPU复位是否异常;
通过总线或GPIO检测所述CPU的互联状态寄存器中的状态位,以确定所述CPU的互联状态是否异常;
通过总线或GPIO检测所述CPU的内存训练状态寄存器中的状态位,以确定所述CPU的内存训练状态是否异常。
优选的,还包括:
通过BIOS配置所述CPU的第一GPIO,当BIOS检测到所述互联状态寄存器中的状态位异常时,将所述第一GPIO置为异常状态对应的电平输出。
优选的,还包括:
通过BIOS配置所述CPU的第二GPIO,当BIOS检测到所述内存训练状态寄存器中的状态位异常时,将所述第二GPIO置为异常状态对应的电平输出。
优选的,所述读取所述CPU的时钟状态寄存器中的时钟信息判断各个时钟域判断各个时钟域是否正常提供,以确定所述CPU的时钟是否异常包括:
读取所述CPU的时钟状态寄存器中,系统时钟、互联参考时钟的时钟信息,判断系统时钟域和互联参考时钟域是否异常。
优选的,还包括:
根据电源、时钟、复位、互联状态、内存训练的顺序依次进行异常检测,当在任一阶段检测出异常时,返回对应的异常信息,并退出本方法。
优选的,所述返回对应的异常信息包括:
返回对应的所述异常信息至BMC,以在所述BMC的WEB界面进行显示。
优选的,所述返回对应的异常信息包括:
返回对应的所述异常信息至异常显示装置;
所述异常显示装置包括:CPU定位灯组和异常定位灯组;
所述CPU定位灯组包括多个LED灯,用于根据不同的亮灭状态指示异常CPU的ID;
所述故障定位灯组包括多个LED灯,用于根据不同的亮灭状态指示异常原因。
为解决上述技术问题,本申请还提供一种多路服务器启动异常定位装置,包括:
电源检测模块,用于通过总线或GPIO检测CPU的power good信号或电源域电压,以确定所述CPU的电源是否异常;
时钟检测模块,用于通过总线或GPIO读取所述CPU的时钟状态寄存器中的时钟信息判断各个时钟域是否正常提供,以确定所述CPU的时钟是否异常;
复位检测模块,用于通过总线或GPIO检测所述CPU的解复位OK信号或外部给到所述CPU的复位控制信号,以确定所述CPU复位是否异常;
第一互联检测模块,用于通过总线或GPIO检测所述CPU的互联状态寄存器中的状态位,以确定所述CPU的互联状态是否异常;
第一内存检测模块,用于通过总线或GPIO检测所述CPU的内存训练状态寄存器中的状态位,以确定所述CPU的内存训练状态是否异常。
优选的,上述多路服务器启动异常定位装置还包括:
第二互联检测模块,用于通过BIOS配置所述CPU的第一GPIO,当BIOS检测到所述互联状态寄存器中的状态位异常时,将所述第一GPIO置为异常状态对应的电平输出。
第二内存检测模块,用于通过BIOS配置所述CPU的第二GPIO,当BIOS检测到所述内存训练状态寄存器中的状态位异常时,将所述第二GPIO置为异常状态对应的电平输出。
顺序检测模块,用于依次触发所述电源检测模块、所述时钟检测模块、所述复位检测模块、所述第一互联检测模块和所述第一内存检测模块,当任一模块检测出异常时,返回对应的异常信息,并停止后续模块的触发。
为解决上述技术问题,本申请还提供一种多路服务器启动异常定位装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述所述的多路服务器启动异常定位方法的步骤。
为解决上述技术问题,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的多路服务器启动异常定位方法的步骤。
本申请提供的一种多路服务器启动异常定位方法,通过总线或GPIO对CPU的powergood信号或电源域电压进行检测以判断电源是否异常;对时钟状态寄存器中的时钟信息进行读取以判断时钟是否异常;对CPU的解复位OK信号或外部给到所述CPU的复位控制信号进行检测以判断CPU复位是否异常;对互联状态寄存器中的状态位进行读取以判断CPU互联状态是否异常;对内存训练状态寄存器中的状态位进行读取以判断内存训练是否异常。上述方法通过获取CPU的各个关键信号对CPU的多种主要异常原因进行判断,无需人工对CPU进行串口打印以定位异常原因,流程规范简单,效率更高。
本申请提供的多路服务器启动异常定位装置、及计算机可读存储介质,与上述方法对应,效果同上。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种多路服务器启动异常定位方法的流程图;
图2为本发明提供的一种异常显示装置的结构图;
图3为本发明提供的另一种异常显示装置的结构图;
图4为本发明提供的一种多路服务器启动异常定位系统的硬件拓扑结构图;
图5为本发明提供的一种多路服务器启动异常定位装置的结构图;
图6为本发明提供的另一种多路服务器启动异常定位装置的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
本申请的核心是提供一种多路服务器启动异常定位方法、装置及其介质。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。
在目前的服务器启动检测方案中,大多是采用状态机的方式,将整机上电的各个阶段展示出来,针对各个电源域的上电状态进行获取并显示,使定位人员可以通过指示灯等方式大体判断出在哪个阶段出现了问题。但无法提供其他像时钟、复位、内存训练等异常信息,尤其在多路服务器中,无法直观体现出具体哪颗CPU出现了异常,此时通常需要人工借助串口线去挨个CPU确认,定位异常CPU后还需要对CPU中各个功能硬件模块进行更细致的检测,最终才能定位异常原因,整个服务器启动故障检测过程比较费时费力。
为解决上述问题,本申请提供一种多路服务器启动异常定位方法,如图1所示,包括:
S11:通过总线或GPIO检测CPU的power good信号或电源域电压,以确定CPU的电源是否异常。
S12:通过总线或GPIO读取CPU的时钟状态寄存器中的时钟信息判断各个时钟域是否正常提供,以确定CPU的时钟是否异常。
S13:通过总线或GPIO检测CPU的解复位OK信号或外部给到CPU的复位控制信号,以确定CPU复位是否异常。
S14:通过总线或GPIO检测CPU的互联状态寄存器中的状态位,以确定CPU的互联状态是否异常。
S15:通过总线或GPIO检测CPU的内存训练状态寄存器中的状态位,以确定CPU的内存训练状态是否异常。
也即,实现上述方法的装置需要与CPU的各个关键信号建立连接关系以进行检测,具体的本方法可依托于复杂可编程逻辑器件(Complex Programmable logic device,CPLD)、微控制单元(MicrocontrollerUnit,MCU)等硬件设备实现。
具体可在服务器板卡设计之初,便将上述的电源、时钟、复位等关键信号对应的输出端连接到CPLD或MCU这类逻辑器件,具体实施可由通用输入/输出(General-purposeinput/output,GPIO)实现连接。此外,CPLD或MCU还通过带外总线与CPU及内存的相关寄存器(互联状态寄存器、内存训练状态寄存器)连接,用于读取寄存器内部的信息,从而实现对异常的判断和异常原因的定位。
需要说明的是,上述方法可同时针对多个CPU实现启动故障检测,仅需将实现上述方法的CPLD或MCU对应连接在各个CPU的关键信号输出端以及相关寄存器即可。对于上述的带外总线,本实施例不限制于具体的总线种类,一种较为常见的实现方式为通过I2C(Inter-Integrated Circuit)总线实现连接。
另外,上述方法中,对于单一异常涉及到两种的异常检测方法可根据实际应用的不同CPU平台的服务器产品特点而自由选用,例如对于电源异常的检测可以从检测powergood信号或者电源域电压中二选一;对于检测复位则可通过检测解复位OK信号实现,对于部分没有解复位OK信号的CPU平台则一般可检测外部设备给到CPU的复位控制信号(也即,此类CPU接收外部复位控制,只是没有复位完成的反馈);以保证本方法的适用性。
还需要说明的是,步骤S11至步骤S15分别为对CPU不同故障原因的判断,步骤之间并无先后顺序关系限制,图1中所示的仅为一种可能的实施方式,步骤S11至步骤S15可以通过多线程并行实现,也可以按照任意顺序进行,本实施例对此不做限制。
但是,由于在服务器的开机过程中,各个功能模块的启动是具有顺序的,先启动的模块如果异常,后续启动的模块一般就不会再启动,所以对于上述步骤S11至步骤S15对CPU各个异常原因的判断也可根据该服务器的启动时序进行安排。具体的,一种优选的实施方案为:
根据电源、时钟、复位、互联状态、内存训练(又称DDR训练,DDR,Double DataRate)的顺序依次进行异常检测,当在任一阶段检测出异常时,返回对应的异常信息,并退出本方法。
当在任一阶段检测出异常时,返回当前阶段对应的异常信息,忽略后续的检测过程,以避免告警指示的异常信息过多以及无用的异常检测。
本申请所提供的一种多路服务器启动异常定位方法,提供了一种获取CPU各个关键信号的方式,以实现通过获取到的关键信号对于CPU导致异常较为常见的电源、时钟、复位、互联状态以及内存训练的检测,覆盖日常服务器CPU启动检测的主要异常场景,提供细致的异常原因定位功能。同时,上述异常定位过程无需人工参与,相比于通过打印串口逐个定位异常CPU和异常原因的方式相比流程更简单、效率更高,更符合实际服务器产品在启动故障检测工作中的需要。
进一步的,对于上述方法中互联状态和内存训练的检测,本实施例还提供另一种优选的实施方案,上述方法还包括:
S21:通过BIOS配置CPU的第一GPIO,当BIOS检测到互联状态寄存器中的状态位异常时,将第一GPIO置为异常状态对应的电平输出。
进一步的,本实施例还提供另一种优选方案,上述方法还包括:
S22:通过BIOS配置CPU的第二GPIO,当BIOS检测到内存训练状态寄存器中的状态位异常时,将第二GPIO置为异常状态对应的电平输出。
容易知道的是,步骤S21对应于步骤S14,都为一种检测CPU互联状态是否异常的方法。区别在于:步骤S14是在服务器CPU启动时,由实现上述方法的CPLD或MCU主动去获取CPU的互联状态寄存器中的状态位,根据状态位的具体数据判断CPU的互联状态(例如,状态位为0表示互联状态正常,1表示互联状态异常)是否异常。而步骤S21则是通过服务器自身的BIOS(BIOS为服务器固化到主板上ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、开机后自检程序和系统自启动程序)在服务器开机自检时进行的互联状态异常的判断。通过对BIOS的预先配置,使得BIOS可以在服务器自检时对互联状态寄存器这类挂载到服务器上的硬件设备进行读取,进而判断服务器的互联状态是否异常,并将对应的GPIO(即第一GPIO)设置为相应的高电平或低电平输出,以供CPLD或MCU直接获取,从而便捷地确定服务器的互联状态是否异常。
与上述同理,步骤S22以及对应的步骤S15也是一样,通过配置BIOS,实现在服务器启动自检时令服务器自身对内存训练是否异常进行检测,CPLD或MCU仅需检测对应GPIO(即第二GPIO)的高低电平状态即可得知当前服务器的内存训练是否异常。
本实施例所提供的一种优选方案,通过配置服务器的BIOS,实现将上述对于获取相应寄存器信息,从而对服务器互联状态以及内存训练异常的检测交由服务器自身在自检程序中进行,CPLD或MCU仅需检测对应GPIO口的高、低电平状态即可得知服务器是否出现互联状态异常以及内存训练状态异常,相比于CPLD或MCU直接向相关寄存器进行数据读取、判断的过程,由服务器自身自检程序实现的效率更高,且安全性也更有保证,更符合实际应用需要。
此外,在上述方法中,对于时钟是否异常的检测主要是通过检测服务器整机所需的各个时钟域是否已正常提供来进行时钟是否异常的检测,但是,由于在服务器的实际应用中,一般情况下服务器有着数量众多的不同时钟域,有些时钟域相对不是非常重要,若对全部时钟域都进行检测则会对异常定位效率产生影响。
所以本实施例提供一种时钟异常检测的优选实施方案,仅对服务器的关键时钟进行检测,具体为:
读取CPU的时钟状态寄存器中,系统时钟、互联参考时钟的时钟信息,判断系统时钟域和互联参考时钟域是否异常。
系统时钟即为服务器应用中最为重要的时钟,服务器大多数功能的实现都需要依靠于系统时钟实现,而互联参考时钟为一种高速时钟,用于对由多颗CPU组成的多路服务器内各个CPU之间的互联,提供高速通信支持,所以互联参考时钟也是多路服务器不可缺少的时钟信号。
容易理解的是,本实施例仅是从多种服务器时钟中选取两个相对较为重要的时钟作为关键时钟进行检测,系统时钟是所有服务器使用所需的重要时钟,而互联参考时钟则是针对多路服务器这类需要进行CPU间高速通信的设备所需的关键时钟。因此,在其他应用场景中,根据服务器种类的不同、实际需要的不同,也可选择其他时钟信号作为关键时钟进行检测。也即,本实施例的主要目的是从服务器中的多种服务器中,根据实际需要选择一部分关键时钟,从而在进行时钟异常检测时进行针对性的检测,以在保证检测效果的前提下提高检测效率。
本实施例所提供的一种优选方案,通过从服务器所需的众多时钟信号中选取部分关键时钟,以在后续的时钟异常检测中进行检测,对于其他时钟信号则不进行异常检测,以在保证异常检测可靠性的前提下,提高时钟检测效率,从而提高整个服务器的异常检测效率。
在通过上述实施例的异常定位方法确定出服务器的异常原因后,需要对异常原因进行反馈,以告知运维人员对异常问题进行排除,所以本实施例提供一种可能的实施方案:
返回对应的异常信息至BMC,以在BMC的WEB界面进行显示。
对于服务器这类功能强大,结构复杂的设备而言,会配置有基板管理控制器(Baseboard Management Controller,BMC)对服务器进行远程管理,BMC一般用于对服务器整机进行状态监测、告警以及控制。此外,在目前的BMC应用中,对于远端管理这一应用场景,用户通常是通过登录BMC的全球广域网(World Wide Web,WEB)页面对服务器进行远程管理。因此,在上述CPLD或MCU确定出服务器各CPU的异常原因后,可将异常原因上传至该服务器对应的BMC的WEB界面,便于用户进行查看和管理。
但是,上述实施例这种通过BMC的WEB界面显示异常信息的方法,需要网络连接,对于某些无网络连接,或者运维人员就在服务器附近的应用场景,上述实施例提供的优选方案不在适用,故本实施例还提供另一种显示异常信息的优选方案:
返回对应的异常信息至异常显示装置;
异常显示装置包括:CPU定位灯组和异常定位灯组;
CPU定位灯组包括多个LED灯,用于根据不同的亮灭状态指示异常CPU的身份识别号(Identity Document,ID);
故障定位灯组包括多个LED灯,用于根据不同的亮灭状态指示异常原因。
具体的,对于异常显示装置的实现,可以通过诸如显示屏等设备实现,也可简单的通过发光二极管(Light-Emitting Diode,LED)灯实现。具体的,本实施例还基于实例,提供几种CPU定位灯组和异常定位灯组的具体实施方式:
以多路服务器具体为四路服务器为例,CPU定位灯组应满足可以指示4个不同CPU的需求。最简单的,即设计4个LED灯,如图2所示,分别用于指示4个不同CPU是否出现异常。进一步的,CPU定位灯组所采用的LED灯可以是红/绿双色LED灯,绿色表示该CPU状态正常,红色表示该CPU出现异常。
容易理解的是,上述的选用红、绿两种颜色作为状态指示颜色仅为一种可能的实施方案,于实际应用中可自由选择LED灯的颜色。同样的,单色LED灯同样可用于指示各CPU的状态,例如CPU状态正常时LED灯不点亮,出现异常时则点亮等等。
又或者,通过二进制的显示机制,仅需两个LED灯即可使CPU定位灯组满足指示4个不同CPU的需求,通过将LED灯的亮/灭状态定义为二进制数“0”和“1”,则两LED灯可显示4种不同的二进制数,分别对应表示4个不同的CPU。
进一步的,上述通过LED灯同样可选用红/绿双色LED灯,绿色表示正常,红色表示异常,两LED灯循环点亮对应CPU的异常状态,例如,每一CPU对应显示3s,灭1s,再亮下一CPU对应的状态。但需要注意的是,在这种应用场景下,对于显示状态为两LED都灭的CPU,显示逻辑需要稍作区分,不能简单的凭借红、绿颜色做区分,可以选取相反的点亮逻辑,例如,其他CPU都为亮3s,灭1s切下一CPU,则显示状态为两LED都灭的CPU可以为亮1s,灭1s的显示逻辑,以实现区分。
对于异常定位灯组,上述实施例中对服务器各种异常原因中的5中说明了检测和判断的方法,简单设计可通过5个LED灯实现,亦或者同样利用上述二进制的思想,由3个LED灯即可实现,而对于不同异常原因对应的LED灯显示状态,与上述CPU定位灯组同理,本实施例不做赘述。
此外,考虑到实际使用中可能也有对于服务器其他异常原因的定位需求,故可对异常定位灯组进行扩展,如图2以及图3所示,通过设置4个LED灯可指示16(2^4)种状态。
进一步的,异常定位灯组可以如图2所示,为每一CPU都设置一组(4个)LED灯用于异常原因指示,也可如图3所示,各CPU共用一组LED灯,CPU定位灯组对应显示某一个CPU,则异常定位灯组显示该CPU的异常状态对应的亮灭状态。
综合上述两种显示异常信息的优选方案,有如图4所示的硬件拓扑结构,包括:多个CPU11(CPU0、CPU1……CPUn),CPLD/MCU12、BMC13和异常显示装置14;
其中,CPLD/MCU12与各个CPU11的各个关键信号对应引脚连接,以进行异常检测,并与BMC13和异常显示装置14连接,以将检测确定的异常信息进行显示从而及时提醒运维人员对服务器异常问题进行解决。
本实施例所提供的显示异常信息的优选实施方案,通过BMC的WEB界面对异常信息进行详细、直观地显示,且支持远程管理,而通过异常显示装置对异常信息进行显示,则是针对无网络连接、以及运维人员就在服务器附近的应用场景,进一步的,也提供了几种异常显示装置具体的实施方案。上述的两种显示方案覆盖了服务器应用的多数应用场景,以实现对服务器异常信息及时反馈的效果。
在上述实施例中,对于一种多路服务器启动异常定位方法进行了详细描述,本申请还提供一种多路服务器启动异常定位装置对应的实施例。需要说明的是,本申请从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件的角度。
基于功能模块的角度,如图5所示,本实施例提供一种多路服务器启动异常定位装置,包括:
电源检测模块21,用于通过总线或GPIO检测CPU的power good信号或电源域电压,以确定CPU的电源是否异常;
时钟检测模块22,用于通过总线或GPIO读取CPU的时钟状态寄存器中的时钟信息判断各个时钟域是否正常提供,以确定CPU的时钟是否异常;
复位检测模块23,用于通过总线或GPIO检测CPU的解复位OK信号或外部给到CPU的复位控制信号,以确定CPU复位是否异常;
第一互联检测模块24,用于通过总线或GPIO检测CPU的互联状态寄存器中的状态位,以确定CPU的互联状态是否异常;
第一内存检测模块25,用于通过总线或GPIO检测CPU的内存训练状态寄存器中的状态位,以确定CPU的内存训练状态是否异常。
优选的,上述多路服务器启动异常定位装置还包括:
第二互联检测模块,用于通过BIOS配置CPU的第一GPIO,当BIOS检测到互联状态寄存器中的状态位异常时,将第一GPIO置为异常状态对应的电平输出。
第二内存检测模块,用于通过BIOS配置CPU的第二GPIO,当BIOS检测到内存训练状态寄存器中的状态位异常时,将第二GPIO置为异常状态对应的电平输出。
顺序检测模块,用于依次触发电源检测模块、时钟检测模块、复位检测模块、第一互联检测模块和第一内存检测模块,当任一模块检测出异常时,返回对应的异常信息,并停止后续模块的触发。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本实施例所提供的一种多路服务器启动异常定位装置,通过电源检测模块、时钟检测模块、复位检测模块、第一互联检测模块和第一内存检测模块,实现通过获取到的关键信号对于CPU导致异常较为常见的电源、时钟、复位、互联状态以及内存训练的检测,覆盖日常服务器CPU启动检测的主要异常场景,提供细致的异常原因定位功能。同时,上述异常定位过程无需人工参与,相比于通过打印串口逐个定位异常CPU和异常原因的方式相比流程更简单、效率更高,更符合实际服务器产品在启动故障检测工作中的需要。
图6为本申请另一实施例提供的一种多路服务器启动异常定位装置的结构图,如图6所示,一种多路服务器启动异常定位装置包括:存储器30,用于存储计算机程序;
处理器31,用于执行计算机程序时实现如上述实施例一种多路服务器启动异常定位方法的步骤。
本实施例提供的一种多路服务器启动异常定位装置可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
其中,处理器31可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器31可以采用数字信号处理器(Digital Signal Processor,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器31也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(CentralProcessing Unit,CPU);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器31可以集成有图像处理器(Graphics Processing Unit,GPU),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器31还可以包括人工智能(Artificial Intelligence,AI)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器30可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器30还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器30至少用于存储以下计算机程序301,其中,该计算机程序被处理器31加载并执行之后,能够实现前述任一实施例公开的一种多路服务器启动异常定位方法的相关步骤。另外,存储器30所存储的资源还可以包括操作系统302和数据303等,存储方式可以是短暂存储或者永久存储。其中,操作系统302可以包括Windows、Unix、Linux等。数据303可以包括但不限于一种多路服务器启动异常定位方法等。
在一些实施例中,一种多路服务器启动异常定位装置还可包括有显示屏32、输入输出接口33、通信接口34、电源35以及通信总线36。
本领域技术人员可以理解,图6中示出的结构并不构成对一种多路服务器启动异常定位装置的限定,可以包括比图示更多或更少的组件。
本申请实施例提供的一种多路服务器启动异常定位装置,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如下方法:一种多路服务器启动异常定位方法。
本实施例所提供的一种多路服务器启动异常定位装置,通过处理器执行保存在存储器中的计算机程序,以实现通过获取到的关键信号对于CPU导致异常较为常见的电源、时钟、复位、互联状态以及内存训练的检测,覆盖日常服务器CPU启动检测的主要异常场景,提供细致的异常原因定位功能。同时,上述异常定位过程无需人工参与,相比于通过打印串口逐个定位异常CPU和异常原因的方式相比流程更简单、效率更高,更符合实际服务器产品在启动故障检测工作中的需要。
最后,本申请还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例所提供的一种计算机可读取存储介质,当其中存储的计算机程序被执行时,可以实现通过获取到的关键信号对于CPU导致异常较为常见的电源、时钟、复位、互联状态以及内存训练的检测,覆盖日常服务器CPU启动检测的主要异常场景,提供细致的异常原因定位功能。同时,上述异常定位过程无需人工参与,相比于通过打印串口逐个定位异常CPU和异常原因的方式相比流程更简单、效率更高,更符合实际服务器产品在启动故障检测工作中的需要。
以上对本申请所提供的一种多路服务器启动异常定位方法、装置及其介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种多路服务器启动异常定位方法,其特征在于,包括:
通过总线或GPIO检测CPU的powergood信号或电源域电压,以确定所述CPU的电源是否异常;
通过总线或GPIO读取所述CPU的时钟状态寄存器中的时钟信息判断各个时钟域是否正常提供,以确定所述CPU的时钟是否异常;
通过总线或GPIO检测所述CPU的解复位OK信号或外部给到所述CPU的复位控制信号,以确定所述CPU复位是否异常;
通过总线或GPIO检测所述CPU的互联状态寄存器中的状态位,以确定所述CPU的互联状态是否异常;
通过总线或GPIO检测所述CPU的内存训练状态寄存器中的状态位,以确定所述CPU的内存训练状态是否异常。
2.根据权利要求1所述的多路服务器启动异常定位方法,其特征在于,还包括:
通过BIOS配置所述CPU的第一GPIO,当BIOS检测到所述互联状态寄存器中的状态位异常时,将所述第一GPIO置为异常状态对应的电平输出。
3.根据权利要求1所述的多路服务器启动异常定位方法,其特征在于,还包括:
通过BIOS配置所述CPU的第二GPIO,当BIOS检测到所述内存训练状态寄存器中的状态位异常时,将所述第二GPIO置为异常状态对应的电平输出。
4.根据权利要求1所述的多路服务器启动异常定位方法,其特征在于,所述读取所述CPU的时钟状态寄存器中的时钟信息判断各个时钟域判断各个时钟域是否正常提供,以确定所述CPU的时钟是否异常包括:
读取所述CPU的时钟状态寄存器中,系统时钟、互联参考时钟的时钟信息,判断系统时钟域和互联参考时钟域是否异常。
5.根据权利要求1至4任意一项所述的多路服务器启动异常定位方法,其特征在于,还包括:
根据电源、时钟、复位、互联状态、内存训练的顺序依次进行异常检测,当在任一阶段检测出异常时,返回对应的异常信息,并退出本方法。
6.根据权利要求5所述的多路服务器启动异常定位方法,其特征在于,所述返回对应的异常信息包括:
返回对应的所述异常信息至BMC,以在所述BMC的WEB界面进行显示。
7.根据权利要求5所述的多路服务器启动异常定位方法,其特征在于,所述返回对应的异常信息包括:
返回对应的所述异常信息至异常显示装置;
所述异常显示装置包括:CPU定位灯组和异常定位灯组;
所述CPU定位灯组包括多个LED灯,用于根据不同的亮灭状态指示异常CPU的ID;
所述故障定位灯组包括多个LED灯,用于根据不同的亮灭状态指示异常原因。
8.一种多路服务器启动异常定位装置,其特征在于,包括:
电源检测模块,用于通过总线或GPIO检测CPU的power good信号或电源域电压,以确定所述CPU的电源是否异常;
时钟检测模块,用于通过总线或GPIO读取所述CPU的时钟状态寄存器中的时钟信息判断各个时钟域是否正常提供,以确定所述CPU的时钟是否异常;
复位检测模块,用于通过总线或GPIO检测所述CPU的解复位OK信号或外部给到所述CPU的复位控制信号,以确定所述CPU复位是否异常;
第一互联检测模块,用于通过总线或GPIO检测所述CPU的互联状态寄存器中的状态位,以确定所述CPU的互联状态是否异常;
第一内存检测模块,用于通过总线或GPIO检测所述CPU的内存训练状态寄存器中的状态位,以确定所述CPU的内存训练状态是否异常。
9.一种多路服务器启动异常定位装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任意一项所述的多路服务器启动异常定位方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任意一项所述的多路服务器启动异常定位方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211619536.2A CN116010141A (zh) | 2022-12-15 | 2022-12-15 | 一种多路服务器启动异常定位方法、装置及其介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211619536.2A CN116010141A (zh) | 2022-12-15 | 2022-12-15 | 一种多路服务器启动异常定位方法、装置及其介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116010141A true CN116010141A (zh) | 2023-04-25 |
Family
ID=86022496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211619536.2A Pending CN116010141A (zh) | 2022-12-15 | 2022-12-15 | 一种多路服务器启动异常定位方法、装置及其介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116010141A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117389781A (zh) * | 2023-10-18 | 2024-01-12 | 上海合芯数字科技有限公司 | 服务器设备的异常侦测与恢复方法、系统、服务器及介质 |
-
2022
- 2022-12-15 CN CN202211619536.2A patent/CN116010141A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117389781A (zh) * | 2023-10-18 | 2024-01-12 | 上海合芯数字科技有限公司 | 服务器设备的异常侦测与恢复方法、系统、服务器及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7356431B2 (en) | Method for testing an input/output functional board | |
US9514846B2 (en) | Memory module status indication | |
CN104572226A (zh) | 一种侦测主板开机异常的方法和装置 | |
CN106055438A (zh) | 一种快速定位主板上内存条异常的方法及系统 | |
CN111274099A (zh) | 一种交换机系统的指示灯控制方法、系统、设备以及介质 | |
CN116107819A (zh) | 一种服务器启动故障检测系统、方法、装置以及介质 | |
CN112286709A (zh) | 一种服务器硬件故障的诊断方法、诊断装置及诊断设备 | |
CN116010141A (zh) | 一种多路服务器启动异常定位方法、装置及其介质 | |
CN113806132B (zh) | 异常复位的处理方法及装置 | |
CN113672306B (zh) | 服务器组件自检异常恢复方法、装置、系统及介质 | |
US9158646B2 (en) | Abnormal information output system for a computer system | |
CN113608684A (zh) | 内存信息获取方法、装置、系统、电子设备及存储介质 | |
CN116627729A (zh) | 外接线缆、外接线缆在位检测装置、开机自检方法及系统 | |
CN116340075A (zh) | 硬盘测试装置、系统、方法及计算机可读存储介质 | |
US20140164815A1 (en) | Server analyzing system | |
CN115098342A (zh) | 系统日志收集方法、系统、终端及存储介质 | |
CN114996069A (zh) | 一种主板测试方法、装置以及介质 | |
CN114153388B (zh) | 一种硬盘系统和硬盘配置信息刷新方法、装置及介质 | |
TW201115331A (en) | Self testing method and system for computing apparatus | |
CN111399871A (zh) | 一种hba卡的系统更新方法、装置、设备及介质 | |
CN114924998B (zh) | 内存信息读取装置及方法、计算设备主板、设备和介质 | |
CN117555745A (zh) | 运行状态监控方法、装置、监控设备及计算机设备 | |
CN115934446A (zh) | 一种自检方法、服务器、设备和存储介质 | |
CN115562915A (zh) | 内存槽故障检测系统和方法 | |
CN114327986A (zh) | Frb2 wdt超时时间确定方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |