CN117149548A - 服务器系统时序测量方法、装置、电子设备及存储介质 - Google Patents

服务器系统时序测量方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN117149548A
CN117149548A CN202311154386.7A CN202311154386A CN117149548A CN 117149548 A CN117149548 A CN 117149548A CN 202311154386 A CN202311154386 A CN 202311154386A CN 117149548 A CN117149548 A CN 117149548A
Authority
CN
China
Prior art keywords
time sequence
server system
data
tested
power
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.)
Granted
Application number
CN202311154386.7A
Other languages
English (en)
Other versions
CN117149548B (zh
Inventor
申明伟
杨占
张猛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hexin Technology Co ltd
Shanghai Hexin Digital Technology Co ltd
Original Assignee
Hexin Technology Co ltd
Shanghai Hexin Digital Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hexin Technology Co ltd, Shanghai Hexin Digital Technology Co ltd filed Critical Hexin Technology Co ltd
Priority to CN202311154386.7A priority Critical patent/CN117149548B/zh
Publication of CN117149548A publication Critical patent/CN117149548A/zh
Application granted granted Critical
Publication of CN117149548B publication Critical patent/CN117149548B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2284Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by power-on test, e.g. power-on self test [POST]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明涉及时序测量技术领域,公开了服务器系统时序测量方法、装置、电子设备及存储介质,包括:在接收到待测服务器系统的开机信号时,对CPLD时序相关的GPIO进行监测,判断GPIO是否发生变化;在GPIO发生变化时,记录GPIO的时序数据与状态数据;判断待测服务器系统上电时序是否完成;在待测服务器系统上电时序完成后,基于GPIO的时序数据与状态数据,得到待测服务器系统上电时序的时序信息,本发明通过在预设的CPLD程序上加入对上电时序的测量功能,在接收到待测服务器的开机信号后,通过监测GPIO的信号变化并记录,代替了使用示波器进行点测的测量方式,可以自动执行无需人工测量,节省人力成本与时间损耗。

Description

服务器系统时序测量方法、装置、电子设备及存储介质
技术领域
本发明涉及时序测量技术领域,具体涉及服务器系统时序测量方法、装置、电子设备及存储介质。
背景技术
时序图描述了一个硬件系统内所有信号电平与时间变化的关系,如不同电压轨的先后关系,电源、时钟、复位之间的关系。在硬件系统设计阶段,需要根据芯片手册中的时序要求设计芯片级和系统级控制时序;在硬件系统样品制作完成后,还要对所设计的硬件系统时序进行测量,以确保所设计的时序符合要求、保证系统可靠工作。
相关技术中,在时序测量时,通常会采用示波器进行测量,即通过人工采样的方式对所有时序相关信号进行点测,但是通过示波器测量的这种方法步骤繁琐、测量时间较长,效率较低,耗费人力。
发明内容
有鉴于此,本发明提供了一种服务器系统时序测量方法、装置、电子设备及存储介质,以解决示波器测量时序存在的问题。
第一方面,本发明提供了一种服务器系统时序测量方法,方法包括:
在接收到待开机信号时,对待测服务器系统的时序相关的通用型输入输出管脚进行监测,判断通用型输入输出管脚的状态是否发生变化;
在通用型输入输出管脚的状态发生变化时,记录通用型输入输出管脚的时序数据与状态数据;
判断待测服务器系统上电时序是否完成;
在待测服务器系统上电时序完成后,基于通用型输入输出管脚的时序数据与状态数据,得到待测服务器系统上电时序的时序信息。
在本发明中,通过在服务器上预设的CPLD可编程器件程序上加入对服务器上电时序的测量功能,实现了时序自动测量,在接收到待测服务器的开机信号后,通过监测通用型输入输出GPIO的信号变化并记录,得到待测服务器上电时序的各个信号,整理得到待测服务器的上电时序信息,代替了人工使用示波器进行手动点测时序,无需进行繁琐的人工测量,节省项目开发的人力成本,同时大幅度节省了时序测量的时间损耗。
在一种可选的实施方式中,在对待测服务器系统的时序相关的通用型输入输出管脚进行监测之前,方法还包括:
将待测服务器系统中与时序相关的寄存器清空至默认值;
为待测服务器系统中的可编程器件导入时钟基准数据与通用型输入输出管脚监控范围数据,并生成时钟基准,得到初始化后的可编程器件。
在该方式中,通过对服务器与时序测试程序进行初始化,便于后续对服务器进行时序测量,使得时序测试流程测试得到的测量结果更为准确。
在一种可选的实施方式中,在接收到开机信号时,方法还包括:
基于时钟基准与开机信号,进行时间戳计数器计数,得到时间戳数据;
基于时间戳数据,判断时间戳计数器是否存在溢出;
在时间戳计数器存在溢出时,停止时序测量,并进行溢出报警。
在该方式中,通过进行时间戳计数,对服务器的开机时序进行监测,可以得到开机总时长,由于上电流程失败会导致溢出,参数设定不正确(如基准时钟周期过小)等也会导致溢出,因此对溢出进行报警,便于对上电流程的准确性进行保障。
在一种可选的实施方式中,方法还包括:
在时间戳计数器不存在溢出时,返回进行时间戳计数器计数的步骤,直至待测服务器系统上电时序完成。
在该方式中,通过对上电流程全车进行时间戳计数,可以得到上级时序的总耗时长,进而便于用户对上机时序进行更为准确的时间把控。
在一种可选的实施方式中,方法还包括:
在通用型输入输出管脚的状态发生变化时,记录当前时刻的时间戳数据,并将时间戳数据、通用型输入输出管脚的时序数据与状态数据存储至待测服务器系统中可编程器件的缓存区域。
在该方式中,由于上电时序执行很快,所以在短时间内会产生交较多的时序数据,通过将时间戳数据、通用型输入输出管脚的时序数据与状态数据共同构成时序事件并存入缓存中,实现了及时将数据传输,避免了数据堵塞与丢失。
在一种可选的实施方式中,在通用型输入输出管脚的状态未发生变化时,返回对待测服务器系统的时序相关的通用型输入输出管脚进行监测的步骤,直至待测服务器系统上电时序完成;
在待测服务器系统上电时序未完成时,返回对待测服务器系统的时序相关的通用型输入输出管脚进行监测的步骤,直至待测服务器系统上电时序完成。
在该方式中,通过在通用型输入输出管脚的状态未发生变化时,返回对待测服务器系统的时序相关的通用型输入输出管脚进行监测的步骤,与在待测服务器系统上电时序未完成时,返回对待测服务器系统的时序相关的通用型输入输出管脚进行监测的步骤,实现了对上电流程全流程的时序进行记录,保证了对上电流程的完整记录,减少了数据的丢失。
在一种可选的实施方式中,时序信息包括:待测服务器系统的时序数据起始标识、时钟基准数据、时序数据与时序数据结束标识;
在基于通用型输入输出管脚的时序数据与状态数据,得到待测服务器系统上电时序的时序信息之后,方法还包括:
将待测服务器系统的时序数据起始标识、时钟基准数据、时序数据与时序数据结束标识发送至与待测服务器系统中的可编程器件连接的上位机;
基于时序数据起始标识、时钟基准数据、时序数据与时序数据结束标识,绘制得到待测服务器系统的上电时序图。
在该方式中,通过将时序信息发送至上位机,便于后续开发人员对待测服务器进行上电时序的监测,将时序信息绘制成时序图,便于用户理解,降低了用户的认知成本。
第二方面,本发明提供了一种服务器系统时序测量装置,装置包括:
输入输出监测模块,用于在接收到开机信号时,对待测服务器系统的时序相关的通用型输入输出管脚进行监测,判断通用型输入输出管脚的状态是否发生变化;
数据记录模块,用于在通用型输入输出管脚的状态发生变化时,记录通用型输入输出管脚的时序数据与状态数据;
上电时序完成判断模块,用于判断待测服务器系统上电时序是否完成;
时序信息整合模块,用于在待测服务器系统上电时序完成后,基于通用型输入输出管脚的时序数据与状态数据,得到待测服务器系统上电时序的时序信息。
第三方面,本发明提供了一种电子设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的服务器系统时序测量方法。
第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的服务器系统时序测量方法。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的服务器系统时序测量方法的流程示意图。
图2a是根据本发明实施例的CPLD与电源模块信号连接示意图。
图2b是根据本发明实施例的服务器系统内时序信号连接示意图。
图3是根据本发明实施例的时序测量程序的结构示意图。
图4是根据本发明实施例的另一服务器系统时序测量方法的流程示意图。
图5是根据本发明实施例的上电时序测量程序的流程图。
图6是根据本发明实施例的又一服务器系统时序测量方法的流程示意图。
图7a根据本发明实施例的数据传输格式的示意图。
图7b根据本发明实施例的时序图。
图8是根据本发明实施例的服务器系统时序测量装置的结构框图。
图9是本发明实施例的电子设备的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
相关技术中,在时序测量时,通常会采用示波器进行测量,即通过人工采样的方式对所有时序相关信号进行点测,但是通过示波器测量的这种方法步骤繁琐、测量时间较长,效率较低,耗费人力。
为解决上述问题,本发明实施例中提供一种服务器系统时序测量方法,用于电子设备中,需要说明的是,其执行主体可以是服务器系统时序测量装置,该装置可以通过软件、硬件或者软硬件结合的方式实现成为电子设备的部分或者全部,其中,该电子设备可以是终端或客户端或服务器,服务器可以是一台服务器,也可以为由多台服务器组成的服务器集群。下述方法实施例中,均以执行主体是电子设备为例来进行说明。
本实施例中的电子设备,适用于在可编程器件CPLD中,对服务器系统的上机流程进行时序测量的程序的使用场景。通过本发明提供服务器系统时序测量方法,通过在服务器上预设的可编程器件CPLD程序上加入对服务器上电时序的测量,实现了时序自动测量,在接收到待测服务器的开机信号后,通过监测通用型输入输出管脚的信号变化并记录,得到待测服务器上电时序的各个信号,整理得到待测服务器的上电时序信息,代替了人工使用示波器进行手动点测时序,无需进行繁琐的人工测量,节省项目开发的人力成本,同时大幅度节省了时序测量的时间损耗。
根据本发明实施例,提供了一种服务器系统时序测量方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中提供了一种服务器系统时序测量方法,可用于上述的可编程器件CPLD,图1是根据本发明实施例的服务器系统时序测量方法的流程图,如图1所示,该流程包括如下步骤:
步骤S101,在接收到开机信号时,对待测服务器系统的时序相关的通用型输入输出管脚进行监测,判断通用型输入输出管脚的状态是否发生变化。
在一示例中,通过对所有与时序相关的通用型输入输出管脚的状态进行监测,判断GPIO是否发生变化。
步骤S102,在通用型输入输出管脚的状态发生变化时,记录通用型输入输出管脚的时序数据与状态数据。
在一示例中,在GPIIO发生变化时,GPIO的时间数据和GPIO数据共同构成一次时序事件。
步骤S103,判断待测服务器系统上电时序是否完成。
在一示例中,对服务器上电时序是否执行完成进行判断。
步骤S104,在待测服务器系统上电时序完成后,基于通用型输入输出管脚的时序数据与状态数据,得到待测服务器系统上电时序的时序信息。
在一示例中,在上电时序执行完成后,给出相关的信号指示,并输出时序信息,便于后续开发人员进行服务器上电时序的监测及后续时序图的绘制。
在一实施场景中在现有的服务器主板设计中,通常都会在主板上放置一颗CPLD对主板上的信号进行时序控制,CPLD具有可编程、工作频率高、灵活等特点。其中,CPLD为一种可编程器件,用于对主板上的一些信号如时序信号、复位信号进行控制。CPLD代码决定这些信号具体的先后关系、触发条件等。
图2a是根据本发明实施例的CPLD与电源模块信号连接示意图。如图2a所示,CPLD在主板上主要负责上电时序的控制和复位信号的控制。在服务器的主板上,有很多不同电压、不同规格或者不同域的电源轨(Power Rail),一个电源模块可以输出一个或者两个电源轨。CPLD需要依据不同电源轨的先后关系,按照预设的触发条件进行电源模块开启或者关闭的控制。电源模块与CPLD连接的信号包括:Power_Enable电源模块输出使能信号和Power_Good电源模块输出状态指示信号。CPLD通过预设的触发条件向电源模块发出PowerEnable信号,当电源模块的输出达到标准后,向CPLD反馈Power_Good信号。其中,GPIO(General-purpose input/output)为通用型之输入输出,用于连接Power Enable信号、Power Good信号等。
图2b是根据本发明实施例的服务器系统内时序信号连接示意图。如图2b所示,一个服务器系统由多个电源轨组成,时序信号包括:电源模块的Power_Enable信号、Power_Good信号以及Reset_N复位信号等信号。上机时序流程包括:
1、CPLD通过GPIO1接收到开机信号,得到开机指示。
2、CPLD通过GPIO2向电源模块1发送Power_Enable信号Power_Enable1,电源模块1收到Enable信号后开始工作,经过若干时间后电源模块1的输出达到输出标准,此时电源模块1向CPLD的GPIO3发送Power_Good信号Power_Good1。
3、当CPLD收到电源模块1的Power_Good1信号后延时预设时间,CPLD通过GPIO4向电源模块2发送Power_Enable信号Power_Enable2,电源模块收到Enable信号后开始工作,经过若干时间后电源模块2的输出达到输出标准,此时电源模块2向CPLD GPIO5发送Power_Good信号Power_Good2。
4、当CPLD收到电源模块2的Power_Good2信号后延时预设时间,CPLD通过GPIO6向电源模块3发送Power_Enable信号Power_Enable3,电源模块收到Enable信号后开始工作,经过若干时间后电源模块3的输出达到输出标准,此时电源模块3向CPLD GPIO7发送Power_Good信号Power_Good3。
5、当CPLD收到电源模块3的Power_Good3信号后延时预设时间,CPLD通过GPIO8向电源模块4发送Power_Enable信号Power_Enable4,电源模块收到Enable信号后开始工作,经过若干时间后电源模块4的输出达到输出标准,此时电源模块4向CPLD GPIO9发送Power_Good信号Power_Good4。
6、当CPLD收到电源模块4的Power_Good4信号后延时预设时间,CPLD通过GPIO10向电源模块5发送Power_Enable信号Power_Enable5,电源模块收到Enable信号后开始工作,经过若干时间后电源模块5的输出达到输出标准,此时电源模块5向CPLD GPIO11发送Power_Good信号Power_Good5。
7、当CPLD收到电源模块5的Power_Good5信号后延时预设时间,CPLD拉高GPIO12,释放Reset_N复位信号,CPU等部件开始初始化。至此,一个完整的上电时序执行结束。
在一示例中,测量时序信号,就是测量Power_Enable信号和电源输出之间的时间以及各个电源轨之间的关系。CPLD可以发出有系统内的所有Power_Enable信号、Reset_N信号,以及可以获取到系统内Power_Good信号。
通过时序测量程序对时序信号进行测量,图3是根据本发明实施例的时序测量程序的结构示意图,如图3所示,时序测量程序由时钟模块、信号监控模块、时间戳模块、数据缓存模块、数据传输模块和控制模块构成。
具体地,1)时钟模块包括:为其他模块提供同步时钟与工作时钟,且保证模块间的数据交互同步传输;同时还为时间戳模块提供基准时钟,此基准时钟为时间计数器的计数标准,按照需求可以提供0.1us、1us、1ms等档位的基准时钟;基准时钟的选取与待测时序间隔有关,为了保证采样精度,根据采样定理以及实际操作情况,基准时钟的时钟周期应为最小变化周期的1/10~1/5,最小变化周期为所有待采样信号的之间的最小时间差。其中,同步时钟用于各个模块之间数据交互时,有同样的速率或者采样时刻,保证模块间数据传输同步。基准时钟是时间戳计数器的技术基准。基准时钟与同步时钟相同或者为同步时钟的1/n分频,n=1.2.3.4…。时钟模块通过CPLD外部的时钟信号输入为具体的时钟信号。外部的时钟信号输入到CPLD后,根据程序要求会对输入的时钟信号进行整形、分频/倍频到需要的同步时钟信号,并由时钟信号分频得到基准时钟。
2)时间戳模块包括:时间戳模块主要为一个时间计数器;收到开机信号触发计数机制,每经过一个基准时钟周期后计数器的值就增加1,开机时序结束后停止计数。时间戳模块理论计数范围为1~2N-1,N为时间戳计数器位宽。时间戳计数器还应设有溢出标志位,即时间戳计数器所有数据位为1时,此时计数器溢出,时间戳计数器数据不在准确。时间戳模块输出的数据位宽与开机时序耗时总时长、采样时钟周期相关。时间戳寄存器容量的计算公式如下:
3)信号监控模块包括:信号监控模块监控所有时序相关的GPIO,当监控到GPIO发生变化后,会立刻将GPIO状态保存至数据缓存模块;同时发出一个触发信号到时间戳模块,时间戳模块也会将当前时间计数器的信息保存至数据缓存模块。时间数据和GPIO数据共同构成一次时序事件。
4)数据缓存模块包括:由于上电时序间隔较短,在短时间内会产生交较多的时序数据,产生的上电时序的数据来不及传输,因此构建一个数据缓存模块用于缓存时序数据,这个缓存在CPLD代码中是一些Reg型的寄存器。在CPLD定义的缓存区域(一个二维Int型寄存器数组),由于数据写入速度与时钟基准一致,所以能够计时的保存时序数据。常见的UART传输方式-115200波特率下无法及时将数据传输,造成数据堵塞、丢失。当上电时序执行完成后,将所有数据经过数据传送模块传送到外部;或者构建FIFO(First In and FirstOut,先入先出)型缓存,能够减小缓存的容量,减少CPLD逻辑资源的占用量。
5)数据传输模块包括:数据传输模块提供一个数据传输接口,将数据缓存模块中的时序数据传送到CPLD外部,方便开发人员分析。数据传输模块包括但不限于I2C接口、UART接口等。
6)控制模块包括:控制模块负责这个时序测量程序的执行,包含初始化、数据传输控制、时间基准选择、GPIO监控范围等。
本实施例提供的服务器系统时序测量方法,通过在服务器上预设的CPLD可编程器件程序上加入对服务器上电时序的测量,实现了时序自动测量,在接收到待测服务器的开机信号后,通过监测通用型输入输出管脚的信号变化并记录,得到待测服务器上电时序的各个信号,整理得到待测服务器的上电时序信息,代替了人工使用示波器进行手动点测时序,无需进行繁琐的人工测量,节省项目开发的人力成本,同时大幅度节省了时序测量的时间损耗。
在本实施例中提供了一种服务器系统时序测量方法,可用于上述的可编程器件CPLD,图4是根据本发明实施例的另一服务器系统时序测量方法的流程图,如图4所示,该流程包括如下步骤:
步骤S401,将待测服务器系统中与时序相关的寄存器清空至默认值。
步骤S402,为待测服务器系统中的可编程器件导入时钟基准数据与通用型输入输出管脚监控范围数据,并生成时钟基准,得到初始化后的可编程器件。
在一示例中,在对待测服务器系统的GPIO进行监测之前,初始化的流程可以包括:当系统插入电源后,CPLD加载配置文件进行初始化,时序测量程序也进行复位、复位释放。复位主要包含所有寄存器清空至默认值;复位解除后进行时钟基准档位数据导入、GPIO监控范围数据导入、时钟生成等操作。
在该方式中,通过对服务器与时序测试流程进行初始化,便于后续对服务器进行时序测量,使得时序测试流程测试得到的测量结果更为准确。
步骤S403,在接收到开机信号时,对待测服务器系统的时序相关的通用型输入输出管脚进行监测,判断通用型输入输出管脚的状态是否发生变化。详细请参见图1所示实施例的步骤S101,在此不再赘述。
步骤S404,在通用型输入输出管脚的状态发生变化时,记录通用型输入输出管脚的时序数据与状态数据。
具体地,在上述步骤S404的同时,服务器系统时序测量方法还包括:
步骤S405,基于时钟基准与开机信号,进行时间戳计数器计数,得到时间戳数据。
步骤S406,基于时间戳数据,判断时间戳计数器是否存在溢出。
步骤S407,在时间戳计数器存在溢出时,停止时序测量,并进行溢出报警。
步骤S408,在时间戳计数器不存在溢出时,返回进行时间戳计数器计数的步骤,直至待测服务器系统上电时序完成。
步骤S409,在通用型输入输出管脚的状态发生变化时,记录当前时刻的时间戳数据,并将时间戳数据、通用型输入输出管脚的时序数据与状态数据存储至待测服务器系统中可编程器件的缓存区域。
在一示例中,图5是根据本发明实施例的上电时序测量程序的流程图。如图5所示,时序测量流程包括:
1.初始化。当系统插入电源后,CPLD加载配置文件进行初始化,时序测量程序也进行复位、复位释放。复位主要包含所有寄存器清空至默认值;复位解除后进行时钟基准档位数据导入、GPIO监控范围数据导入、时钟生成等操作。
2.外部输入开机信号,时序测量模块收到开机信号后,时间戳时间计数器开始计数,直到程序执行完成;在整个时序测量过程中还要监控时间戳计数器是否溢出,如果溢出则停止时序测量,并给出报错信息。由于时序测量程序和时序控制流程完全独立,溢出并不绝对的意味着上电流程失败,具体地,上电流程失败会导致溢出,参数设定(基准时钟周期)不正确(过小)等也会导致溢出。
3.外部输入开机信号,GPIO监控模块监控GPIO是否发生变化。
4.如果GPIO没有发生变化,则继续监控GPIO状态;如果GPIO发生变化,则将相关的时间数据、GPIO数据写入缓存区域。
5.系统上电时序未执行完成,则继续监控GPIO的数据是否发生变化,直至上电时序执行完成;如果上电时序执行完成,则给出相关的信号指示,并输出时序信息。
6.上电时序测量程序结束。其中,上电时序测量程序得到的是二进制原始数据,是上电时序流程的数据,需要进一步处理才能得到时序图,上电时序数据是时间—GPIO状态的一个二维的关系数据。
步骤S410,判断待测服务器系统上电时序是否完成。详细请参见图1所示实施例的步骤S104,在此不再赘述。
步骤S411,在待测服务器系统上电时序完成后,基于通用型输入输出管脚的时序数据与状态数据,得到待测服务器系统上电时序的时序信息。详细请参见图1所示实施例的步骤S104,在此不再赘述。
本实施例提供的服务器系统时序测量方法,通过对服务器与时序测试流程进行初始化,便于后续对服务器进行时序测量,使得时序测试流程测试得到的测量结果更为准确。通过进行时间戳计数,对服务器的开机时序进行监测,可以得到开机总时长,由于上电流程失败会导致溢出,参数设定不正确(如基准时钟周期过小)等也会导致溢出,因此对溢出进行报警,便于对上电流程的安全性进行保障。通过对上电流程全车进行时间戳计数,可以得到上级时序的总耗时长,进而便于用户对上机时序进行更为准确的时间把控。由于上电时序执行很快,所以在短时间内会产生交较多的时序数据,通过将时间戳数据、GPIO的时序数据与状态数据共同构成时序事件并存入缓存中,实现了及时将数据传输,避免了数据堵塞与丢失。
在本实施例中提供了一种服务器系统时序测量方法,可用于上述的电子设备,图6是根据本发明实施例的服务器系统时序测量方法的流程图,如图6所示,该流程包括如下步骤:
步骤S601,在接收到开机信号时,对待测服务器系统的时序相关的通用型输入输出管脚进行监测,判断通用型输入输出管脚的状态是否发生变化。详细请参见图4所示实施例的步骤S403,在此不再赘述。
步骤S602,在通用型输入输出管脚的状态发生变化时,记录通用型输入输出管脚的时序数据与状态数据。详细请参见图4所示实施例的步骤S404至S409,在此不再赘述。
具体地,在上述步骤S602的同时,服务器系统时序测量方法还包括:
步骤S603,在通用型输入输出管脚的状态未发生变化时,返回对待测服务器系统的时序相关的通用型输入输出管脚进行监测的步骤,直至待测服务器系统上电时序完成。
步骤S604,判断待测服务器系统上电时序是否完成。详细请参见图4所示实施例的步骤S410,在此不再赘述。
步骤S605,在待测服务器系统上电时序完成后,基于通用型输入输出管脚的时序数据与状态数据,得到待测服务器系统上电时序的时序信息。详细请参见图4所示实施例的步骤S411,在此不再赘述。
具体地,在上述步骤S605的同时,服务器系统时序测量方法还包括:
步骤S606,在待测服务器系统上电时序未完成时,返回对待测服务器系统的时序相关的通用型输入输出管脚进行监测的步骤,直至待测服务器系统上电时序完成。
具体地,时序信息包括:待测服务器系统的时序数据起始标识、时钟基准数据、时序数据与的时序数据结束标识。
在上述步骤S606之后,服务器系统时序测量方法还包括:
步骤S607,将待测服务器系统的时序数据起始标识、时钟基准数据、时序数据与时序数据结束标识发送至与待测服务器系统中的可编程器件连接的上位机。
步骤S608,基于时序数据起始标识、时钟基准数据、时序数据与时序数据结束标识,绘制得到待测服务器系统的上电时序图。
在一示例中,时序测量完成后,由传输模块将时序数据传输至CPLD外部,传输方式包含但不限于I2C、UART等数据。
数据传输内容和顺序包含如下内容:
1、时序数据起始标识,64-bit数据;
2、时钟基准,用于指示时间戳计数的周期,包含但不止0.01us、0.1us、1us……
3、时序数据1,……,n,其中,n为监控GPIO的数量,GPIO的数量由当前系统需要的电源数量决定。时序数据包含时间计数信息和GPIO数据;为避免数据传输错误,同时传输的还设有校验数据,具体地,校验数据是在数据发送与上位机数据接收过程中设置的,设置的目的是保证CPLD发送的数据与上位机接收到的数据一致(因为数据传输在物理上是电信号传输,可能收到干扰)。
4、时序数据结束标识。
当开发人员获取到时序数据后,对时序数据进行解析并绘制成时序图便于理解。其中,时序图绘制在平面直角坐标系中,以横坐标为时间轴,开机时刻为0时刻,纵坐标为GPIO数据,根据时序模块发送的数据,绘制对应的波形和图形。将不便于理解的二进制数据转换成便于理解的时序图形。时序数据在记录时,是一组64位甚至更多位的寄存器进行记录,寄存器的位数根据时间精度和GPIO数量决定。时序数据寄存器定义举例:
[63:59]:5位寄存器编号,可以记录大约32条时序数据。
[58:32]:时间信息,即时间戳计数器的值,配合时钟基准数据可以换算实际时间。
[31:0]:GPIO数据,可以同时记录32个GPIO的状态,其中一个或者多个GPIO状态改变均可以记录。
图7a根据本发明实施例的数据传输格式的示意图,图7b根据本发明实施例的时序图。如图7a与图7b所示,-GPIO1-Power_On为开机信号,连接到了GPIO1上;-GPIO2-Power_Enable1电源模块1的使能信号,连接到了GPIO2上;-GPIO3_Power_Good1电源模块1的输出正常信号,连接到了GPIO3上。
本实施例提供的服务器系统时序测量方法,通过在GPIO未发生变化时,返回对待测服务器系统的GPIO进行监测的步骤,与在待测服务器系统上电时序未完成时,返回对待测服务器系统的GPIO进行监测的步骤,实现了对上电流程全流程的时序进行记录,保证了对上电流程的完整记录,减少了数据的丢失。通过将时序信息发送至上位机,便于后续开发人员对待测服务器进行上电时序的监测,将时序信息绘制成时序图,便于用户理解,降低了用户的认知成本。
在本实施例中还提供了一种服务器系统时序测量装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本实施例提供一种服务器系统时序测量装置,如图8所示,包括:
输入输出监测模块801,用于在接收到开机信号时,对待测服务器系统的时序相关的通用型输入输出管脚进行监测,判断通用型输入输出管脚的状态是否发生变化;详细请参见图1所示实施例的步骤S101,在此不再赘述。
数据记录模块802,用于在通用型输入输出管脚的状态发生变化时,记录通用型输入输出管脚的时序数据与状态数据;详细请参见图1所示实施例的步骤S102,在此不再赘述。
上电时序完成判断模块803,用于判断待测服务器系统上电时序是否完成;详细请参见图1所示实施例的步骤S103,在此不再赘述。
时序信息整合模块804,用于在待测服务器系统上电时序完成后,基于通用型输入输出管脚的时序数据与状态数据,得到待测服务器系统上电时序的时序信息。详细请参见图1所示实施例的步骤S104,在此不再赘述。
在一些可选的实施方式中,服务器系统时序测量装置还包括:
默认值清空单元,用于将待测服务器系统中与时序相关的寄存器清空至默认值;
初始数据导入单元,用于为待测服务器系统中的可编程器件导入时钟基准数据与通用型输入输出管脚监控范围数据,并生成时钟基准,得到初始化后的可编程器件。
在一些可选的实施方式中,服务器系统时序测量装置还包括:
时间戳计数单元,用于基于时钟基准与开机信号,进行时间戳计数器计数,得到时间戳数据;
溢出判断单元,用于基于时间戳数据,判断时间戳计数器是否存在溢出;
溢出报警单元,用于在时间戳计数器存在溢出时,停止时序测量,并进行溢出报警。
在一些可选的实施方式中,服务器系统时序测量装置还包括:
返回计数单元,用于在时间戳计数器不存在溢出时,返回进行时间戳计数器计数的步骤,直至待测服务器系统上电时序完成。
在一些可选的实施方式中,服务器系统时序测量装置还包括:
数据缓存单元,用于在通用型输入输出管脚的状态发生变化时,记录当前时刻的时间戳数据,并将时间戳数据、通用型输入输出管脚的时序数据与状态数据存储至待测服务器系统中可编程器件的缓存区域
在一些可选的实施方式中,服务器系统时序测量装置还包括:
第一监测返回单元,用于在通用型输入输出管脚的状态未发生变化时,返回对待测服务器系统的时序相关的通用型输入输出管脚进行监测的步骤,直至待测服务器系统上电时序完成;
第二监测返回单元,用于在待测服务器系统上电时序未完成时,返回对待测服务器系统的时序相关的通用型输入输出管脚进行监测的步骤,直至待测服务器系统上电时序完成。
在一些可选的实施方式中,时序信息包括:待测服务器系统的时序数据起始标识、时钟基准数据、时序数据与的时序数据结束标识;
服务器系统时序测量装置还包括:
数据传输单元,用于将待测服务器系统的时序数据起始标识、时钟基准数据、时序数据与时序数据结束标识发送至与待测服务器系统中的可编程器件连接的上位机;
时序图绘制单元,用于基于时序数据起始标识、时钟基准数据、时序数据与时序数据结束标识,绘制得到待测服务器系统的上电时序图。
上述各个模块和单元的更进一步的功能描述与上述对应实施例相同,在此不再赘述。
本实施例中的服务器系统时序测量装置是以功能单元的形式来呈现,这里的单元是指ASIC(Application Specific Integrated Circuit,专用集成电路)电路,执行一个或多个软件或固定程序的处理器和存储器,和/或其他可以提供上述功能的器件。
本发明实施例还提供一种电子设备,具有上述图8所示的服务器系统时序测量装置。
请参阅图9,图9是本发明可选实施例提供的一种电子设备的结构示意图,如图9所示,该电子设备包括:一个或多个处理器10、存储器20,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在一些可选的实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图9中以一个处理器10为例。
处理器10可以是中央处理器,网络处理器或其组合。其中,处理器10还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。
其中,所述存储器20存储有可由至少一个处理器10执行的指令,以使所述至少一个处理器10执行实现上述实施例示出的方法。
存储器20可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器20可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些可选的实施方式中,存储器20可选包括相对于处理器10远程设置的存储器,这些远程存储器可以通过网络连接至该电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
存储器20可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器20还可以包括上述种类的存储器的组合。
该电子设备还包括通信接口30,用于该电子设备与其他设备或通信网络通信。
本发明实施例还提供了一种计算机可读存储介质,上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的原始存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等;进一步地,存储介质还可以包括上述种类的存储器的组合。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现上述实施例示出的方法。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

Claims (10)

1.一种服务器系统时序测量方法,其特征在于,所述方法包括:
在接收到开机信号时,对待测服务器系统的时序相关的通用型输入输出管脚进行监测,判断所述通用型输入输出管脚的状态是否发生变化;
在所述通用型输入输出管脚的状态发生变化时,记录所述通用型输入输出管脚的时序数据与状态数据;
判断所述待测服务器系统上电时序是否完成;
在所述待测服务器系统上电时序完成后,基于所述通用型输入输出管脚的时序数据与状态数据,得到所述待测服务器系统上电时序的时序信息。
2.根据权利要求1所述的方法,其特征在于,在对所述待测服务器系统的时序相关的通用型输入输出管脚进行监测之前,所述方法还包括:
将所述待测服务器系统中与时序相关的寄存器清空至默认值;
为所述待测服务器系统中的可编程器件导入时钟基准数据与通用型输入输出管脚监控范围数据,并生成时钟基准,得到初始化后的可编程器件。
3.根据权利要求2所述的方法,其特征在于,在接收到开机信号时,所述方法还包括:
基于所述时钟基准与所述开机信号,进行时间戳计数器计数,得到时间戳数据;
基于所述时间戳数据,判断所述时间戳计数器是否存在溢出;
在所述时间戳计数器存在溢出时,停止时序测量,并进行溢出报警。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在所述时间戳计数器不存在溢出时,返回所述进行时间戳计数器计数的步骤,直至所述待测服务器系统上电时序完成。
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在所述通用型输入输出管脚的状态发生变化时,记录当前时刻的时间戳数据,并将所述时间戳数据、所述通用型输入输出管脚的时序数据与状态数据存储至所述待测服务器系统中可编程器件的缓存区域。
6.根据权利要求1所述的方法,其特征在于,在所述通用型输入输出管脚的状态未发生变化时,返回所述对所述待测服务器系统的时序相关的通用型输入输出管脚进行监测的步骤,直至所述待测服务器系统上电时序完成;
在所述待测服务器系统上电时序未完成时,返回所述对所述待测服务器系统的时序相关的通用型输入输出管脚进行监测的步骤,直至所述待测服务器系统上电时序完成。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述时序信息包括:所述待测服务器系统的时序数据起始标识、时钟基准数据、时序数据与时序数据结束标识;
在所述基于所述通用型输入输出管脚的时序数据与状态数据,得到所述待测服务器系统上电时序的时序信息之后,所述方法还包括:
将所述待测服务器系统的时序数据起始标识、时钟基准数据、时序数据与时序数据结束标识发送至与所述待测服务器系统中的可编程器件连接的上位机;
基于所述时序数据起始标识、时钟基准数据、时序数据与时序数据结束标识,绘制得到所述待测服务器系统的上电时序图。
8.一种服务器系统时序测量装置,其特征在于,所述装置包括:
输入输出监测模块,用于在接收到开机信号时,对待测服务器系统的时序相关的通用型输入输出管脚进行监测,判断所述通用型输入输出管脚的状态是否发生变化;
数据记录模块,用于在所述通用型输入输出管脚的状态发生变化时,记录所述通用型输入输出管脚的时序数据与状态数据;
上电时序完成判断模块,用于判断所述待测服务器系统上电时序是否完成;
时序信息整合模块,用于在所述待测服务器系统上电时序完成后,基于所述通用型输入输出管脚的时序数据与状态数据,得到所述待测服务器系统上电时序的时序信息。
9.一种电子设备,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1至7中任一项所述的服务器系统时序测量方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至7中任一项所述的服务器系统时序测量方法。
CN202311154386.7A 2023-09-07 2023-09-07 服务器系统时序测量方法、装置、电子设备及存储介质 Active CN117149548B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311154386.7A CN117149548B (zh) 2023-09-07 2023-09-07 服务器系统时序测量方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311154386.7A CN117149548B (zh) 2023-09-07 2023-09-07 服务器系统时序测量方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN117149548A true CN117149548A (zh) 2023-12-01
CN117149548B CN117149548B (zh) 2024-04-26

Family

ID=88883969

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311154386.7A Active CN117149548B (zh) 2023-09-07 2023-09-07 服务器系统时序测量方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN117149548B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1567754A (zh) * 2003-06-24 2005-01-19 华为技术有限公司 实现通讯接口时序自动检测的装置和方法
CN105892611A (zh) * 2016-04-01 2016-08-24 浪潮电子信息产业股份有限公司 一种cpu上电时序控制方法、装置及系统
WO2022111048A1 (zh) * 2020-11-30 2022-06-02 苏州浪潮智能科技有限公司 一种电源控制方法、装置、服务器及非易失性存储介质
CN114816022A (zh) * 2022-04-28 2022-07-29 苏州浪潮智能科技有限公司 一种服务器电源异常监控方法、系统及存储介质
WO2023103307A1 (zh) * 2021-12-06 2023-06-15 苏州浪潮智能科技有限公司 一种服务器时序检测方法、装置及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1567754A (zh) * 2003-06-24 2005-01-19 华为技术有限公司 实现通讯接口时序自动检测的装置和方法
CN105892611A (zh) * 2016-04-01 2016-08-24 浪潮电子信息产业股份有限公司 一种cpu上电时序控制方法、装置及系统
WO2022111048A1 (zh) * 2020-11-30 2022-06-02 苏州浪潮智能科技有限公司 一种电源控制方法、装置、服务器及非易失性存储介质
WO2023103307A1 (zh) * 2021-12-06 2023-06-15 苏州浪潮智能科技有限公司 一种服务器时序检测方法、装置及系统
CN114816022A (zh) * 2022-04-28 2022-07-29 苏州浪潮智能科技有限公司 一种服务器电源异常监控方法、系统及存储介质

Also Published As

Publication number Publication date
CN117149548B (zh) 2024-04-26

Similar Documents

Publication Publication Date Title
US5768152A (en) Performance monitoring through JTAG 1149.1 interface
US20090113183A1 (en) Method of controlling a device and a device controlled thereby
US8996928B2 (en) Devices for indicating a physical layer error
US5649129A (en) GPIB system including controller and analyzer
WO2022198919A1 (zh) 双芯智能电表的超差事件记录方法、装置和计算机设备
CN114584228B (zh) 一种wifi生产测试校准系统、方法及电子设备
CN114020511A (zh) 基于fpga的故障检测方法、装置、设备及可读存储介质
CN109283833A (zh) 一种时间统计系统和方法
US7047155B2 (en) Bus interface
CN117149548B (zh) 服务器系统时序测量方法、装置、电子设备及存储介质
CN114625234A (zh) 一种服务器电压监控方法、装置和系统
US5896552A (en) Bus analyzer for capturing bus signals at a predetermined rate and upon assertion of a data valid signal
CN109117299B (zh) 服务器的侦错装置及其侦错方法
CN111696617B (zh) 非挥发性存储器读数据速度测试电路和测试方法
CN117234783A (zh) Pcie设备的检测方法及装置、bios及存储介质
US5734876A (en) Analyzer for capturing elapsed time values if predetermined conditions have occurred or capturing maximum time value upon counter rollover if predetermined conditions have not occurred
US5649123A (en) GPIB system with improved parallel poll response detection
CN101303662B (zh) 一种实现风机转速采集的方法及装置
US10180890B2 (en) Systems and methods for monitoring hardware observation points within a system on a Chip (SoC)
CN109101075B (zh) 时间标签生成装置及方法
CN111367729A (zh) 一种结合CPLD与UART的debug方法、系统及设备
CN113608942B (zh) 一种测试lpc信号的方法、系统、设备及介质
CN118566675A (zh) 一种具有自动计数功能的二极管检测装置
CN115407187B (zh) 一种汽车开关量信号的检测电路及方法
CN216621494U (zh) 温度监控装置及测试系统

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
GR01 Patent grant
GR01 Patent grant