CN112148065A - 一种时间同步的方法和服务器 - Google Patents

一种时间同步的方法和服务器 Download PDF

Info

Publication number
CN112148065A
CN112148065A CN201910579190.XA CN201910579190A CN112148065A CN 112148065 A CN112148065 A CN 112148065A CN 201910579190 A CN201910579190 A CN 201910579190A CN 112148065 A CN112148065 A CN 112148065A
Authority
CN
China
Prior art keywords
time
cpld
server
register
bmc
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
Application number
CN201910579190.XA
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201910579190.XA priority Critical patent/CN112148065A/zh
Priority to PCT/CN2020/081834 priority patent/WO2020258958A1/zh
Publication of CN112148065A publication Critical patent/CN112148065A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/14Time supervision arrangements, e.g. real time clock

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种时间同步的方法和服务器,BMC可以先获取第一时间,然后,将获取的第一时间存储至CPLD的时间寄存器;CPLD可以基于第一时间,启动计时并记录计时结果,当计时结果达到预设阈值时,CPLD根据第一时间和计时结果确定第二时间;并根据第二时间更新时间寄存器。CPLD中的时间寄存器记录的实时时间可以提供给服务器的其他组件,保证服务器中各个组件的正常运转,能够在服务器中的PCB上部署更多重要的组件,可以提高服务器性能,有效减少服务器硬件成本。

Description

一种时间同步的方法和服务器
技术领域
本申请涉及服务器技术领域,尤其涉及一种时间同步的方法和服务器。
背景技术
每个服务器中的印制电路板(print circuit board,PCB)可设置一个或多个实时时钟(real-time clock,RTC)电路。RTC电路通过可编程逻辑器件(programmable logicdevice,PLD)与服务器中各个组件相连,通过PLD从RTC获取时间信息,再由PLD将时间信息共享给各个组件,以对各个组件提供时间信息。其中,组件如基板管理控制器(baseboardmanagement controller,BMC)、中央处理器(central processing unit,CPU)等。在服务器长时间未上电的情况下,RTC电路仍可以提供实时时间,若服务器重新上电,RTC电路可以将实时时间提供给服务器的各个组件,以保证服务器的各个组件可以基于获取的实时时间实现业务对接、日志记录等功能。但传统服务器中RTC电路均会占用PCB较大的面积,影响了PCB中组件的布局,无法在同一PCB所提供的有限空间中增加其他重要组件的数量,导致服务器的处理能力受限,当需要满足较高业务需求时,只能通过增加服务器的数量满足其要求,增大了服务器硬件成本。
发明内容
本申请提供一种时间同步的方法和服务器,用以减少服务器中PCB上的RTC电路的占用面积,降低服务器成本。
第一方面,本申请提供了一种时间同步的方法,该方法可以应用于服务器,该服务器中可以不设置RTC电路,服务器包括BMC和CPLD,BMC与CPLD相连,该方法包括:BMC可以先获取第一时间,之后,将获取的第一时间存储至CPLD的时间寄存器中;时间寄存器中存储的时间可以实时更新,以存储实时时间;第一时间为BMC获取第一时间操作的时刻;CPLD可以基于第一时间,启动计时并记录计时结果,当计时结果达到预设阈值时,CPLD根据第一时间和计时结果确定第二时间;并根据第二时间更新时间寄存器。
通过上述方法,服务器中的BMC获取第一时间,并将获取的第一时间保存在CPLD中,且由于CPLD具有计时功能,CPLD中的时间寄存器可以记录实时时间,以便CPLD中的时间寄存器记录的实时时间可以提供给服务器的其他组件,保证服务器中各个组件的正常运转,这样,服务器中不需要部署RTC电路,能够在服务器中的PCB上部署更多重要的组件,可以提高服务器性能,有效减少服务器硬件成本。
在一种可能的设计中,BMC与CPLD可以通过第一接口通信,BMC将获取的第一时间存储至CPLD的时间寄存器时,可以通过第一接口将第一时间存储至CPLD的时间寄存器。
通过上述方法,CPLD中设置有与BMC连接的第一接口,使得BMC可以较快速、便捷的将第一时间更新至时间寄存器。
在一种可能的设计中,处理器与CPLD可以通过第二接口通信,处理器可以通过第二接口从时间寄存器读取第二时间;处理器基于第二时间,启动计时并记录实时时间。
通过上述方法,处理器可以从CPLD获取第二时间,并启动计时,以执行一些需要实时时间做参考的操作,如业务对接、日志记录等,能够使得处理器可以在正常运转。
在一种可能的设计中,CPLD计时的方式不同,计时结果也不同;例如,CPLD可以通过记录时间值的方式计时,这种方式下,CPLD的计时结果可以是时间值,相应的,预设阈值指示CPLD的更新时间寄存器的时间间隔;这样CPLD在每个时间间隔后,对时间寄存器中存储的时间进行更新,使得时间寄存器记录的时间与NTP服务器的时间保证一致。
又例如,CPLD可以记录计数次数,通过计数次数计时,这种方式下,CPLD的计时结果为计数次数,相应的,预设阈值指示CPLD的最大计数次数。这样CPLD在每当计数次数达到最大计数次数时,对时间寄存器中存储的时间进行更新,同样可以使得时间寄存器记录的时间与NTP服务器的时间保证一致。
在一种可能的设计中,CPLD在根据第一时间和计时结果确定第二时间,可以采用累加的方式,确定第二时间;示例性的,CPLD可以根据第一时间和计时结果的累加结果,确定第二时间。
通过上述方法,CPLD通过采用累加的方式确定第二时间,第二时间可以较为精确的反映为当前时刻的时间。
在一种可能的设计中,BMC在获取第一时间时,可以从NTP服务器获取第一时间,也可以从已时间校准的服务器获取第一时间。
通过上述方法,BMC获取的第一时间较为精确,保证后续CPLD可以通过计时确定的第二时间能够与NTP服务器的实时时间保持一致。
在一种可能的设计中,处理器还可以从服务器中的存储介质中获取用户配置数据,基于用户配置数据进行启动,该存储介质可以是非易失性存储介质,也可以是有供电电源供电、服务器掉电情况下数据不丢失的存储介质。
通过上述方法,在服务器不部署RTC电路的情况下,处理器仍可以获取用户配置数据,使得处理器可以正常运行。
第二方面,本申请提供了一种时间同步的装置,该装置具有实现第一方面及第一方面任意一种可能的设计中BMC、处理器以及CPLD所实现的功能。功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,装置的结构中包括管理单元、计时单元以及处理单元,计时单元还包括存储单元,这些单元可以执行上述第一方面示例中的BMC、处理器以及CPLD相应功能,具体参见第一方面示例中的详细描述,此处不做赘述。
第三方面,本申请还提供了一种服务器,有益效果可以参见第一方面及第一方面任意一种可能的设计的描述此处不再赘述。服务器的结构中包括基板管理控制器、复杂可编程逻辑器件、处理器、以及内存,处理器被配置为支持处理器执行上述第一方面及第一方面任意一种可能的设计的处理器中相应的功能,内存与处理器耦合,其保存必要的程序指令和数据。基板管理控制器被配置为支持基板管理控制器执行上述第一方面及第一方面任意一种可能的设计的基板管理控制器中相应的功能;复杂可编程逻辑器件被配置为支持复杂可编程逻辑器件执行上述第一方面及第一方面任意一种可能的设计的复杂可编程逻辑器件中相应的功能;通信接口用于与其他设备进行通信。
第四方面,本申请还提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的BMC、处理器以及CPLD执行的方法。
第五方面,本申请还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面的BMC、处理器以及CPLD执行的方法。
第六方面,本申请还提供一种计算机芯片,芯片与存储器相连,芯片用于读取并执行存储器中存储的软件程序,执行上述各方面的BMC、处理器以及CPLD执行的方法。
附图说明
图1为本申请提供的一种服务器的示意图;
图2为本申请提供的一种系统的架构示意图;
图3为本申请提供的一种服务器启动的三阶段的示意图;
图4为本申请提供的一种时间同步的方法示意图;
图5为本申请提供的一种时间同步的装置结构示意图;
图6为本申请提供的一种服务器的结构示意图。
具体实施方式
本申请为了降低服务器成本,在服务器中不再部署RTC电路,而是由服务器中的BMC从外部的服务器获取时间(如本申请实施例中的T0),将获取的时间存储在复杂可编程逻辑器件(complex programmable logic device,CPLD)中,便于后续处理器从CPLD中获取时间使得处理器可以基于获取的时间进行一系列上电之后的启动操作。
下面结合附图介绍对本申请实施例所适用的服务器以及系统的架构进行说明。
图1为本申请实施例提供的时间同步系统的示意图,如图1所示,该系统包括服务器100和网络时间协议(network time protocol,NTP)服务器200。可选地,该系统中还包括服务器300。NTP服务器200和服务器300可以用于为服务器100提供时间同步信息,如提供实时时间。
如图1所示为,服务器100中包括BMC110、处理器120和复杂可编程逻辑器件(complex programmable logic device,CPLD)130。
BMC110与处理器120之间通过CPLD130相连。在本申请实施例中,CPLD130中可以包括时间寄存器1301,该时间寄存器1301可以用于存储当前的实时时间;如本申请实施例中的时间T0以及更新的T1等。CPLD130还具备计时功能,可以基于BMC110发送的时间T0计时,获得当前的实时时间,并对时间寄存器1301中存储的时间进行更新。
BMC110用于实现服务器中各个组件进行监控和管理。例如,BMC110可以监控服务器100中组件的(如处理器120、服务器100中存储介质等)温度、电压;还可以控制服务器110中风扇的转速。
BMC110也可以具备计时功能,例如BMC110中可以包括时钟电路,该时钟电路可以用于计时。
需要说明的是,图1中仅示例性的绘制出了服务器100中的一个处理器120。本申请实施例并不限定服务器100中包括的处理器120的数量,当服务器100中存在多个处理器120时,BMC110可以与每个处理器120之间通过一个CPLD130相连,换句话说,BMC110与每个处理器120之间设置一个CPLD130;BMC110可以将获取的时间更新至每个CPLD130中的时间寄存器1301,处理器120从相连的CPLD130的时间寄存器1301中获取实时时间。作为一种可能的实施方式,BMC110也可以通过一个CPLD130与多个处理器120中的部分处理器120相连,也就是说,多个的处理器120可以与一个CPLD130连接;BMC110可以将获取的时间更新至与其相连的各个CPLD130中的时间寄存器1301,处理器120从相连的CPLD130的时间寄存器1301中获取实时时间。
可选的,当服务器100中存在多个处理器120时,BMC110可以与其中一个处理器120(为方便说明该处理器可以称为第一处理器)之间通过CPLD130相连,多个处理器120中除第一处理器外的其余处理器(为方便说明该其余处理器可以称为第二处理器)可以与第一处理器连接。第二处理器可以作为第一处理器的协处理器,与第一处理器配合执行一些操作;第二处理器也可以是与第一处理器具备相同功能的处理器,本申请实施例并不限定第二处理器的类型以及功能。
BMC110可以将获取的时间更新至CPLD130中的时间寄存器1301,第一处理器从相连的CPLD130的时间寄存器1301中获取实时时间。第二处理器可以从相连的第一处理器中获取实时时间;在上述说明中,以一个第一处理器为例进行说明,本申请实施例并不限定第一处理器的数量,BMC110可以与多个第一处理器之间通过CPLD130相连,其余处理器可以连接在多个第一处理器中的任一第一处理器,以获取实时时间。
如图1所示,所述CPLD130中除包括时间寄存器1301,还包括计数器1302以及BMC接口1303以及处理器接口1304。
BMC110可以将获取的时间T0通过BMC接口1303存储在时间寄存器1301中;计数器1302可以从时间寄存器1301中获取时间T0并启动计时,还可以对时间寄存器1301进行更新,随着时间的推进,时间寄存器1301中存储的时间不断的更新,可以始终记录当前时刻的实时时间;处理器120可以通过处理器接口1304从时间寄存器1301中读取当前时刻的实时时间(如时间T1)。
本申请实施例并不限定计数器1302计时的方式,例如,计数器1302中可以包括时钟电路,计数器1302可以基于T0,利用时钟电路进行计时。
可选地,计数器1302也可以基于时钟电路,产生固定周期的脉冲信号S1(如固定周期为1秒);然后,计数器1302利用脉冲信号S1计时,计时的起始值为T0,计数器1302每产生一个脉冲信号S1,对T0累加1,进行计时。
本申请实施例中也不限定计数器1302更新时间寄存器1301的方式,例如可以按照预设的时间间隔进行更新,也可以按照预设的最大计数次数进行更新,具体可以参见下文中的说明。
值得说明的是,系统架构中CPLD除了实现计时器1302和时间寄存器1301的功能外,还可以用于服务器中其他计算或存储功能,本申请对此并不做限制。
图2为本申请实施例提供的另一种系统架构示意图,如图2所示,该系统中包括一个管理器400、多个服务器100,每个服务器100中的结构与如图2所示的服务器100类似,此处不再赘述。
在如图3所示的系统中,管理器400可以连接多个服务器100,对多个服务器100进行管理控制,例如,管理器400可以统计与管理器400连接的服务器100的数量以及每个服务器100的类型、位置等,还可以从服务器100中的BMC110中获取服务器100中一些组件的信息等。本申请实施例并不限定管理器400与每个服务器100的连接方式,例如管理器400可以与服务器100通过有线方式连接,也可以通过网络(如以太网等无线网络)方式连接。
本申请实施例不限定管理器400的具体形态,可以是服务器,也可以是芯片,也可以是其他类型的模块等。
在本申请实施例中,管理器400可以与系统之外的服务器通信,该服务器可以是NTP服务器200,也可以是其他时间已校准的服务器300;示例性的,管理器400可以直接与系统之外的服务器进行通信,也可以通过交换机与系统之外的服务器进行通信。例如,管理器400可以从系统之外的服务器获取时间T0,并将时间T0通知给与管理器400连接的服务器100,如可以将时间T0发送给服务器100中的BMC110。
本申请实施例并不限定图2所示的系统的具体形态,如图2所示的系统可以是刀片式服务器,管理器400为刀片式服务器中的管理器,服务100可以为刀片式服务器中的服务器;如图2所示的系统也可以是机柜式服务器集群,管理器400为机柜式服务器集群中的管理板,服务器100为机柜式服务器集群中的任一服务器。
首先,对服务器100启动的各个阶段进行说明。图3为本申请实施例提供的服务器100启动过程的描述,如图3所示,服务器100的启动过程可以分为三个阶段,服务器100内电源供电方式可以划分为两个域:主电(main)和备电(standby)。服务器100接入电源后,服务器100中的各个组件按照预置顺序上电。首先,备电先对服务器100中的BMC110供电(第一阶段);然后,BMC110可以发送控制命令,该控制命令用于控制主电给处理器120供电;处理器120上电后,处理器120开始启动,首先启动基本输入输出系统(basic input outputsystem,BIOS),该过程对应第二阶段;最后,启动操作系统(operating system,OS),该过程对应第三阶段。
接下来,进一步介绍各个阶段的上电过程:
第一阶段,BMC110启动。
BMC110上电之后,对BMC110的功能进行初始化,例如BMC110可以完成与BMC接口1303初始化,初始化操作包括加载接口的驱动程序,连接CPLD130。当BMC110初始化完成,可以控制服务器100进入第二阶段;BMC110可以通过发送控制指令的方式控制主电给处理器120供电,进入第二阶段。
第二阶段,BIOS启动。
处理器120上电之后,可以加载BIOS,读取服务器100的系统配置信息,基于系统配置信息对处理器120的底层硬件的进行配置,执行引导记录(Boot Record)中的引导程序(Boot),完成OS启动的引导动作,之后进入下一个阶段。
第三阶段,OS启动。
进入第三阶段,处理器120加载OS内核,进行初始化,打通OS与处理器120底层硬件之间的连接。
在第三阶段中,处理器120可以与外部服务器进行通信,如可以从NTP服务器获取较为精准的实时时间,处理器120从NTP服务器获取实时时间后,以该实时时间为基础,进行计时。
下面以图1所示的时间同步系统为例,结合图4对本申请实施例提供的时间同步的方法进行说明,如图4所示,该方法包括:
步骤401:在服务器100启动的第一阶段,BMC110上电之后,与其他服务器进行时间同步,获取时间T0。
其他服务器可以是NTP服务器200,也可以是其他时间已校准的服务器300。
BMC110上电之后,可以与NTP服务器200进行时间同步,若BMC110与NTP服务器200连接中断或NTP服务器故障,导致BMC110无法从NTP服务器200获取当前时刻的时间,BMC110可以与图1所示的时间同步系统中其他服务器通信,以获取当前时刻的时间T0。时间T0是指BMC110在执行获取时间T0的操作时的时刻,时间T0可以具体指示年份、月份、日期、时、分、或秒等信息。其中,上述其他服务器可以是时间已校准的服务器300。
步骤402:BMC110将时间T0写入CPLD130的时间寄存器1301。
BMC110可以通过BMC接口1303将时间T0写入CPLD130的时间寄存器1301。
步骤403:CPLD130中计数器1302可以基于时间T0开始计时,并记录计时结果,并根据时间T0和计时结果更新时间寄存器1301。
计数器1302会一直计时,并持续更新时间寄存器1301(也就是说计数器1302会持续更新时间寄存器1301中存储的时间),使寄存器中存储的时间为当前时刻的时间,使得服务器100与NTP服务器200记录的时间保持一致。
计数器1302在更新时间寄存器1301中存储的时间时,可以设置预设阈值,当计时结果达到预设阈值时,计数器1302更新时间寄存器1301中存储的时间;对于计数器1302计时的方式不同,记录的计时结果也不同,例如计数器1302可以采用累加时间值的方式进行计时,也可以记录计数次数,通过累加计数次数和计数间隔的乘积的方式进行计时,也可以采用其他方式,本申请实施例并不限定,对于不同的计时方式,计数器1302在更新寄存器中存储的时间有所不同,下面列举其中两种:
方式一、计数器1302可以按照预设的时间间隔对时间寄存器1301进行更新。
当计数器1302的计时结果为时间值,例如计时结果可以是计数器1302获取时间T0后所经过的时长,当该时长达到预设的时间间隔时,可以将时间T0累加该时长产生的时间值,作为时间T1更新至时间寄存器1301。
示例性的,若T0为9:00,时间间隔为5秒;计数器1302在从时间寄存器1301获取T0后开始计时,当根据计数器1302的时钟电路或脉冲信号记录的时长达到5秒时,可以将9:00累加5秒,获得9:05,将9:05更新至时间寄存器1301;后续采用相似的方式对时间寄存器1301进行更新,例如,计数器1302在从时间寄存器1301获取时间9:05后开始计时,如可以根据计数器1302的时钟电路或脉冲信号S1记录的时长达到5秒时,可以当将9:05累加5秒,获得的9:10,将9:10更新至时间寄存器1301。采用上述方式计数器1302可以对时间寄存器1301中存储的时间进行更新,时间寄存器1301中存储的时间可以为当前时刻的实时时间。
方式二、计数器1302可以按照预设的最大计数次数对时间寄存器1301进行更新。
当计数器1302的计时结果为计数次数,例如计时结果可以是计数器1302获取时间T0后的计数次数,如以每秒计时一次为例,计数结果可以为5次,表征计数器1302获取时间T0后计数了五次,指示计数器1302获取时间T0后所经过的时长为5*1秒,当该计数次数达到预设的最大计数次数时,可以将时间T0累加该时长产生的时间值,作为时间T1更新至时间寄存器1301。
示例性的,若T0为9:00,最大计数次数为5次,计数器1302的计数频率为每秒一次;计数器1302在从时间寄存器1301获取T0后开始计时,如可以根据计数器1302的时钟电路或脉冲信号进行计数,计数次数达到5次时,可以将9:00累加5*1秒,获得的9:05,将9:05更新至时间寄存器1301;后续采用相似的方式对时间寄存器1301进行更新,例如,计数器1302在从时间寄存器1301获取时间9:05后开始计时,如可以根据计数器1302的时钟电路或脉冲信号S1进行计数,计数次数达到5次时,可以将9:05累加5*1秒,获得9:10,将9:10更新在时间寄存器1301。采用上述方式计数器1302可以对时间寄存器1301中存储的时间进行更新,这样,时间寄存器1301中存储的时间为当前时刻的实时时间。
方式二中,计数器1302确定计时结果达到预设的最大计数次数的方式本申请实施例并不限定,例如,计数器1302可以记录计数次数,每计数一次,则增加一次,通过比较记录的计数次数与最大计数次数确定计数结果是否达到预设的最大计数次数;又例如,计数器1302可以维持计数值,该计数值初始设定的值为最大计数次数,计数器1302每计数一次,可以对该计数值减一,当该计数值减为零,则确定计数结果达到预设的最大计数次数。
需要说明的是,BMC110获取时间T0,并将时间T0写入时间寄存器1301的过程中,需要消耗一段时长,也就是说,BMC110将时间T0写入时间寄存器1301的当前时刻并不是时间T0,而是时间T0之后的一个时刻;为了保证时间寄存器1301能够更加精确的记录当前时刻的实时时间,计数器1302可以在从获取时间T0后,可以在时间T0的基础上增加设时长△T1,也就是说计数器1302在获取时间T0首次更新时间寄存器1301时,可以在时间T0与计时结果的累加结果的基础上,增加时长△T1,生成时间T1,写入时间寄存器1301,时长△T1可以是预估的BMC110获取时间T0,并将时间T0写入时间寄存器1301的时长,也可以为一个经验数值。可选的,计数器1302在首次更新时间寄存器1301后,在后续每次更新时间寄存器1301时,也可以在从时间寄存器1301获取的时间与计时结果的累加结果的基础上增加时长△T2,将增加了时长△T2的累加结果更新至时间寄存器1301,时长△T2可以是预估的计数器1302从时间寄存器1301中获取时间的时长,也可以为一个经验数值。
在一种可能的实施方式中,BMC110获取时间T0后,也可以利用BMC110中的时钟电路进行计时,记录计时结果,该计时结果为BMC110记录的实时时间,BMC110基于T0计时的方式可以参见计数器1301的计时方式,此处不再赘述,BMC110可以每隔一段时间,利用BMC110记录的计时结果对CPLD130中的时间寄存器1301中存储的时间进行更新,CPLD130中计数器1302再基于BMC110更新后的时间进行计时。以此保证CPLD130中存储的时间可以与BMC110的记录的时间保持一致,提高CPLD130中存储的时间的精确程度。
需要说明的是,BMC110每隔一段时间,利用BMC110记录的计时结果对CPLD130中的时间寄存器1301存储的时间进行更新;为了保证时间寄存器1301能够更加精确的记录当前时刻的实时时间,计数器1302可以在BMC110更新时间寄存器1301存储的时间后,获取时间寄存器1301存储的时间T2,在获取的时间T2的基础上增加时长△T3,也就是说计数器1302在BMC110更新时间寄存器1301存储的时间后首次更新时间寄存器1301时,可以在获取的时间T2与计时结果的累加结果的基础上,增加时长△T3,生成当前的实时时间T3,写入时间寄存器1301,时长△T3可以是预估的BMC110将时间写入到时间寄存器1301的所需时长,也可以为一个经验数值。
本申请实施例并不限定时长△T1、时长△T2以及时长△T3的具体数值,时长△T1、时长△T2以及时长△T3可以相同,也可以不同。
步骤404:在服务器100启动的第二阶段,处理器120上电,处理器120可以通过处理器接口1304从CPLD130(如CPLD130中的时间寄存器1301)中读取时间,该时间为当前时刻CPLD130存储的时间。
在本申请实施例中以处理器120从CPLD130读取时间时,当前CPLD130中的时间寄存器1301存储的时间为T1为例进行说明,T1指示处理器120可以从CPLD130读取时间时,CPLD130最近更新的时间。
由于处理器120上电之后,可以从CPLD130读取时间T1,后续BMC110可以不再更新CPLD130存储的时间。示例性的,BMC110可以在发送控制指令,控制主电给处理器120供电后,不再更新CPLD130中存储的时间。
CPLD130也可以在处理器120获取时间T1后,不再计时,停止更新时间寄存器1301。
步骤405:处理器120获取时间T1后,基于时间T1进行计时,记录实时时间,并基于记录的实时时间,进行数据同步、日志记录等操作。
在服务器100启动的第三阶段,处理器120可以与NTP服务器200或时间已校准的服务器300进行通信,获取实时时间,对当前处理器120保存的计时结果进行更新。
作为一个可能的实施例,如图4所示的实施例也可应用于如图2所示的系统架构,区别在于,在步骤401中,BMC110需要从管理器400中获取时间T0,而管理器400可以从系统外的服务器(如NTP服务器200或时间已校准的服务器300)获取时间T0。这样,可以使得在多服务器场景下,每个服务器中也不需要设置RTC电路,也可以保证能够进行时间同步,获取实时时间,可以有效减小服务器中RTC电路占用的PCB的面积,降低服务器硬件成本,服务器的PCB上可以设置更多组件,有益于提高服务器性能。
另外,传统时间同步系统中,RTC电路包括RTC芯片以及供电电源,RTC电路中的供电电源可以为RTC芯片供电,与处理器相连的RTC供电电源还用于对处理器中平台控制单元(platform controller hub,PCH)供电,用于保证服务器断电时,PCH中保存的数据不丢失,PCH用于存储用户配置数据,如用户配置数据为处理器120启动(如第二阶段、第三阶段)所需的信息。示例性的,这些用户配置数据包括但不限于处理器的高速串行计算机扩展总线标准(peripheral component interconnect express,PCIe)端口带宽设置、OS启动区设置(如硬盘启动、光驱启动)。当利用本申请的技术方案取消RTC电路时,需要考虑如何保存原PCH中存储的用户配置数据在服务器断电的情况下,用户配置数据不丢失。作为一个可能的实施例,可以将这些用户配置数据保存在服务器100中的存储介质中,该存储介质可以是非易失性存储介质,例如存储介质可以是BIOS闪存(Flash),也可以其他有供电电源维持的、服务器100掉电数据不丢失的存储介质,当进入服务器100启动的第二阶段处理器120可以从该存储介质读取这些用户配置数据。保证在服务器100不设置PTC电路的情况下,服务器100中的处理器120仍可以获取用户配置数据,能够正常启动,保证了服务器的正常性能。
作为一种可能的实施例,除了本申请实施例提供的图1和图2所示的系统架构外,本申请的发明还可以利用在其他系统架构中,该扩展的系统架构可以利用除CPLD以外的其他组件或逻辑电路实现下述方法中CPLD的功能,例如,服务器中存在一个逻辑电路,该逻辑电路可以与BMC和处理器进行通信,并基于获取的时间T0确认并记录当前时刻的时间T1,相应地,处理器可以通过该逻辑电路获取时间T1,并基于该时间T1计算当前时刻的时间,以实现OS启动过程中日志等信息的配置。
上文中结合图1至图4,详细描述了根据本申请实施例所提供的时间同步的方法,下面将结合图5和图6,进一步描述本申请实施例所提供的时间同步的装置和服务器。
图5为本申请实施例提供的一种时间同步装置,如图所示,该装置包括管理单元510、计时单元520以及处理单元530,计时单元520中包括存储单元521,存储单元521用于存储当前时刻的时间;
管理单元510,用于将获取的第一时间存储至存储单元521,第一时间用于指示获取第一时间操作的时刻;管理单元510可以用于执行如图4所示的实施例中的步骤401。
计时单元520,用于启动计时并记录计时结果;当计时结果达到预设阈值时,根据第一时间和计时结果确定第二时间;根据第二时间更新存储单元521。管理单元510可以用于执行如图4所示的实施例中的步骤402~403。
可选的,管理单元510与计时单元520可以通过第一接口通信;管理单元510在将获取的第一时间存储至存储单元521时可以通过第一接口将第一时间存储至存储单元521。
可选的,装置还包括处理单元530,处理单元530与计时单元520可以通过第二接口通信:
处理单元530可以通过第二接口从存储单元521读取第二时间,基于第二时间,启动计时并记录实时时间。处理单元530可以用于执行如图4所示的实施例中的步骤404~405。
可选的,计时单元520的计时方式不同,计时结果也不同,下面列举其中两种:
方式一、计时单元520采用累加时间值的方式进行计时,这种方式下,计时结果为时间值,预设阈值指示计时单元520的更新存储单元521的时间间隔。
方式二、计时单元520记录计数次数,通过累加计数次数与计数间隔的乘积的方式进行计时,这种方式下,计时结果为计数次数,预设阈值指示计时单元520的最大计数次数。
可选的,计时单元520在根据第一时间和计时结果确定第二时间时,可根据第一时间和计时结果的累加结果,确定第二时间。
可选的,管理单元510在获取第一时间时,可以从NTP服务器获取第一时间,也可以从时间已校准的服务器获取第一时间。
应理解的是,本申请实施例的时间同步装置可以通过专用集成电路(application-specific integrated circuit,ASIC)实现,或可编程逻辑器件(programmable logic device,PLD)实现,上述PLD可以是复杂程序逻辑器件(complexprogrammable logical device,CPLD),现场可编程门阵列(field-programmable gatearray,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。也可以通过软件实现图4所示的时间同步方法时,时间同步装置及其各个模块也可以为软件模块。
根据本申请实施例的时间同步装置可对应于执行本发明实施例中描述的方法,并且时间同步装置中的各个单元的上述和其它操作和/或功能分别为了实现图4中的各个方法的相应流程,为了简洁,在此不再赘述。
图6为本申请实施例提供的一种服务器结构示意图,如图所示,服务器600包括BMC610、处理器620,以及CPLD630。
可选的,服务器600还可以包括内存640、通信接口650、存储介质660。
BMC610、处理器620、CPLD630、通信接口650、存储介质660通过总线670连接。
处理器620可以是中央处埋器(central processing unit,CPU)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(fieldprogrammable gate array,FPGA)、人工智能(artificial intelligence,AI)芯片、片上系统(system on chip,SoC)或复杂可编程逻辑器件(complex programmable logic device,CPLD),图形处理器(graphics processing unit,GPU),本申请对于处理器的类型和数量并不限定。
内存640,用于存储计算机程序指令,可以是易失性存储器,例如随机存取存储器;也可以是非易失性存储器,例如只读存储器,闪存,硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)等。
在本申请实施例中,存储介质660,也称为外存,可以用于存储服务器运行所需要的数据,该存储介质可以是非易失性存储器,例如磁性介质(例如,软盘、硬盘、磁带)、光介质(例如光盘)、或者半导体介质(例如固态硬盘)等。
总线670除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线670。
作为一种可能的实施例,CPLD630也可以通过其他类型的内部总线实现BMC610和处理器620的连接,其中,内部总线包括链路控制协议(link control protocol,LCP)、局部总线local Bus、I2C总线(inter-integrated circuit)或串行外设接口(serialperipheral interface,SPI)总线连接。
在如图6所示的服务器600中,也可以设置独立的数据收发模块,例如通信接口650,用于收发数据;BMC610或处理器620在与其他设备进行通信时,可以通过通信接口650进行数据传输,如在本申请实施例中,BMC610可以通过通信接口650从NTP服务器200或时间已校准的服务器300获取第一时间。
当所述服务器采用图6所示的形式时,图6中的处理器620可以调用内存640中的计算机程序指令执行如图4中处理器120执行的方法;BMC610执行如图4中BMC110执行的方法。CPLD630可以执行如图4中CPLD130执行的方法。
具体的,内存640中存储有用于实现图5中的处理单元的功能的计算机执行指令,图5中的处理单元的功能/实现过程均可以通过图6中的处理器620调用内存640中存储的计算机执行指令来实现。
应理解,根据本申请实施例的服务器可对应于本申请实施例中的时间同步装置,并可以对应于执行根据本申请实施例图4所示的方法中的相应主体,并且服务器中的各个模块的上述和其它操作和/或功能分别为了实现图4中的各个方法的相应流程,为了简洁,在此不再赘述。
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘(solid state drive,SSD)。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述,仅为本发明的具体实施方式。熟悉本技术领域的技术人员根据本发明提供的具体实施方式,可想到变化或替换,都应涵盖在本发明的保护范围之内。

Claims (12)

1.一种时间同步的方法,其特征在于,所述方法包括:
基板管理控制器BMC将获取的第一时间存储至复杂可编程逻辑电路CPLD的时间寄存器;所述时间寄存器用于存储当前时刻的时间;所述第一时间用于指示获取所述第一时间操作的时刻;所述BMC与所述CPLD相连;
所述CPLD启动计时并记录计时结果,当所述计时结果达到预设阈值时,所述CPLD根据所述第一时间和所述计时结果确定第二时间;
所述CPLD根据所述第二时间更新所述时间寄存器。
2.如权利要求1所述的方法,其特征在于,
所述BMC与所述CPLD相连,包括:所述BMC与所述CPLD通过第一接口通信;
则所述BMC将获取的第一时间存储至CPLD的时间寄存器,包括:
所述BMC通过所述第一接口将所述第一时间存储至所述CPLD的时间寄存器。
3.如权利要求1所述的方法,其特征在于,
处理器与所述CPLD通过第二接口通信,所述方法还包括:
所述处理器通过所述第二接口从所述时间寄存器读取所述第二时间;
所述处理器基于所述第二时间,启动计时并记录实时时间。
4.如权利要求1所述的方法,其特征在于,所述计时结果为时间值,所述预设阈值指示所述CPLD的更新所述时间寄存器的时间间隔;或
所述计时结果为计数次数,所述预设阈值指示所述CPLD的最大计数次数。
5.如权利要求4所述的方法,其特征在于,所述CPLD根据所述第一时间和计时结果确定第二时间,包括:
所述CPLD根据所述第一时间和计时结果的累加结果,确定所述第二时间。
6.如权利要求1所述的方法,其特征在于,所述BMC获取第一时间,包括:
所述BMC从网络时间协议NTP服务器或已完成时间校准的其他服务器获取所述第一时间。
7.一种服务器,其特征在于,所述服务器包括基板管理控制器BMC和复杂可编程逻辑电路CPLD,所述BMC与所述CPLD相连,所述CPLD包括时间寄存器,所述时间寄存器用于存储当前时刻的时间;
所述BMC,用于将获取的第一时间存储至所述时间寄存器,所述第一时间用于指示获取所述第一时间操作的时刻;
所述CPLD,用于启动计时并记录计时结果;当所述计时结果达到预设阈值时,根据所述第一时间和所述计时结果确定第二时间;根据所述第二时间更新所述时间寄存器。
8.如权利要求7所述的服务器,其特征在于,所述BMC与所述CPLD通过第一接口通信;
所述BMC,还用于通过所述第一接口将所述第一时间存储至所述时间寄存器。
9.如权利要求7所述的服务器,其特征在于,所述服务器还包括处理器,所述处理器与所述CPLD通过第二接口通信;
所述处理器,用于通过第二接口从所述时间寄存器读取所述第二时间,基于所述第二时间,启动计时并记录实时时间。
10.如权利要求7所述的服务器,其特征在于,
所述计时结果为时间值,所述预设阈值指示所述CPLD的更新所述时间寄存器的时间间隔;或
所述计时结果为计数次数,所述预设阈值指示所述CPLD的最大计数次数。
11.如权利要求10所述的服务器,其特征在于,
所述CPLD,还用于根据所述第一时间和计时结果的累加结果,确定所述第二时间。
12.如权利要求7所述的服务器,其特征在于,
所述BMC,还用于从网络时间协议NTP服务器或已时间校准的服务器获取所述第一时间。
CN201910579190.XA 2019-06-28 2019-06-28 一种时间同步的方法和服务器 Pending CN112148065A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910579190.XA CN112148065A (zh) 2019-06-28 2019-06-28 一种时间同步的方法和服务器
PCT/CN2020/081834 WO2020258958A1 (zh) 2019-06-28 2020-03-27 一种时间同步的方法和服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910579190.XA CN112148065A (zh) 2019-06-28 2019-06-28 一种时间同步的方法和服务器

Publications (1)

Publication Number Publication Date
CN112148065A true CN112148065A (zh) 2020-12-29

Family

ID=73891339

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910579190.XA Pending CN112148065A (zh) 2019-06-28 2019-06-28 一种时间同步的方法和服务器

Country Status (2)

Country Link
CN (1) CN112148065A (zh)
WO (1) WO2020258958A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114115446A (zh) * 2021-11-30 2022-03-01 杭州迪普信息技术有限公司 一种共享实时时钟的方法及数据处理设备
CN114895746A (zh) * 2022-06-14 2022-08-12 北京东土军悦科技有限公司 一种系统时间的同步方法及装置、计算设备、存储介质
CN117289754A (zh) * 2023-08-22 2023-12-26 北京辉羲智能科技有限公司 一种时间同步的芯片架构及其软件控制方法

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020116658A1 (en) * 2001-02-16 2002-08-22 Masatoshi Yano Terminal device and real-time clock control method therefor enabling preservation of clock/calendar information and high information readout speed
CN1812317A (zh) * 2005-12-15 2006-08-02 中国人民解放军国防科学技术大学 同步媒介访问控制器
US7197657B1 (en) * 2003-04-03 2007-03-27 Advanced Micro Devices, Inc. BMC-hosted real-time clock and non-volatile RAM replacement
CN101546169A (zh) * 2009-04-15 2009-09-30 北京航空航天大学 时间校准方法和装置
CN102291233A (zh) * 2011-09-08 2011-12-21 武汉烽火网络有限责任公司 用于获得时间同步中精确线路传输延迟的方法
CN103152117A (zh) * 2012-09-14 2013-06-12 南京航空航天大学 一种嵌入式高精度网络时间服务器系统
US20130265116A1 (en) * 2012-04-10 2013-10-10 Alchip Technologies, Ltd. Signal generating circuit for real time clock device and method thereof
CN104980244A (zh) * 2015-07-01 2015-10-14 大唐电信(成都)信息技术有限公司 时间同步设备输入线路延时补偿装置及方法
CN106685563A (zh) * 2016-12-05 2017-05-17 深圳市合讯电子有限公司 一种变电站侧高精度守时系统
CN107315449A (zh) * 2017-06-29 2017-11-03 华为技术有限公司 计算机设备、读取时间的方法和写入时间的方法
CN107577140A (zh) * 2017-09-14 2018-01-12 国电南瑞科技股份有限公司 一种基于fpga的同步时钟管理模块
CN108134626A (zh) * 2018-01-16 2018-06-08 四川安迪科技实业有限公司 一种vsat网时间同步方法
CN108415817A (zh) * 2018-03-01 2018-08-17 郑州云海信息技术有限公司 Bmc获取时间的方法、装置、设备及可存储介质
CN109634353A (zh) * 2018-12-03 2019-04-16 郑州云海信息技术有限公司 服务器主机级联box拓扑架构时钟同步方法、装置、终端及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015032059A1 (zh) * 2013-09-05 2015-03-12 华为技术有限公司 存储系统及数据操作请求处理方法
CN104156039A (zh) * 2014-08-18 2014-11-19 中国航天科技集团公司第九研究院第七七一研究所 一种星载计算机实时时钟读取和自守时时钟系统
TWI632461B (zh) * 2017-05-25 2018-08-11 緯穎科技服務股份有限公司 獲取時間戳記的方法以及使用該方法的電腦裝置

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1374592A (zh) * 2001-02-16 2002-10-16 日本电气株式会社 使时钟/日历信息和高信息读出速度能保持的终端设备及其实时时钟控制方法
US20020116658A1 (en) * 2001-02-16 2002-08-22 Masatoshi Yano Terminal device and real-time clock control method therefor enabling preservation of clock/calendar information and high information readout speed
US7197657B1 (en) * 2003-04-03 2007-03-27 Advanced Micro Devices, Inc. BMC-hosted real-time clock and non-volatile RAM replacement
CN1812317A (zh) * 2005-12-15 2006-08-02 中国人民解放军国防科学技术大学 同步媒介访问控制器
CN101546169A (zh) * 2009-04-15 2009-09-30 北京航空航天大学 时间校准方法和装置
CN102291233A (zh) * 2011-09-08 2011-12-21 武汉烽火网络有限责任公司 用于获得时间同步中精确线路传输延迟的方法
US20130265116A1 (en) * 2012-04-10 2013-10-10 Alchip Technologies, Ltd. Signal generating circuit for real time clock device and method thereof
CN103152117A (zh) * 2012-09-14 2013-06-12 南京航空航天大学 一种嵌入式高精度网络时间服务器系统
CN104980244A (zh) * 2015-07-01 2015-10-14 大唐电信(成都)信息技术有限公司 时间同步设备输入线路延时补偿装置及方法
CN106685563A (zh) * 2016-12-05 2017-05-17 深圳市合讯电子有限公司 一种变电站侧高精度守时系统
CN107315449A (zh) * 2017-06-29 2017-11-03 华为技术有限公司 计算机设备、读取时间的方法和写入时间的方法
CN107577140A (zh) * 2017-09-14 2018-01-12 国电南瑞科技股份有限公司 一种基于fpga的同步时钟管理模块
CN108134626A (zh) * 2018-01-16 2018-06-08 四川安迪科技实业有限公司 一种vsat网时间同步方法
CN108415817A (zh) * 2018-03-01 2018-08-17 郑州云海信息技术有限公司 Bmc获取时间的方法、装置、设备及可存储介质
CN109634353A (zh) * 2018-12-03 2019-04-16 郑州云海信息技术有限公司 服务器主机级联box拓扑架构时钟同步方法、装置、终端及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王伟: "导航接收机本地守时电路设计及其关键技术研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114115446A (zh) * 2021-11-30 2022-03-01 杭州迪普信息技术有限公司 一种共享实时时钟的方法及数据处理设备
CN114895746A (zh) * 2022-06-14 2022-08-12 北京东土军悦科技有限公司 一种系统时间的同步方法及装置、计算设备、存储介质
CN114895746B (zh) * 2022-06-14 2023-11-07 北京东土军悦科技有限公司 一种系统时间的同步方法及装置、计算设备、存储介质
CN117289754A (zh) * 2023-08-22 2023-12-26 北京辉羲智能科技有限公司 一种时间同步的芯片架构及其软件控制方法
CN117289754B (zh) * 2023-08-22 2024-06-07 北京辉羲智能科技有限公司 一种时间同步的芯片架构及其软件控制方法

Also Published As

Publication number Publication date
WO2020258958A1 (zh) 2020-12-30

Similar Documents

Publication Publication Date Title
TWI631466B (zh) 機箱管理系統及機箱管理方法
WO2020258958A1 (zh) 一种时间同步的方法和服务器
US10126954B1 (en) Chipset and server system using the same
US10846159B2 (en) System and method for managing, resetting and diagnosing failures of a device management bus
US9104343B2 (en) Global synchronous clock circuit and method for blade processors
US8626973B2 (en) Pseudo multi-master I2C operation in a blade server chassis
US10101764B2 (en) Automatic clock configuration system
CN107797642B (zh) 一种备电方法及装置
CN111949320B (zh) 提供系统数据的方法、系统及服务器
CN112181468A (zh) 一种cpld更新方法、服务器及计算机可读存储介质
CN109725940B (zh) 用于计算系统启动的方法和计算系统
WO2024082870A1 (zh) 一种计算设备及数据获取方法
TWI840849B (zh) 計算系統、電腦實施方法及電腦程式產品
CN111459768A (zh) 一种硬盘管理方法、装置、设备及机器可读存储介质
WO2023016379A1 (zh) 计算机系统、基于PCIe设备的控制方法及相关设备
CN118377513B (zh) 服务器的信息管理方法及装置
JP5722990B2 (ja) 計算機システム、計算機時刻管理方法
US11755334B2 (en) Systems and methods for augmented notifications in remote management of an IHS (information handling system)
US20240362131A1 (en) Systems and methods for configuration of witness sleds
CN116610190A (zh) 单片机日志时间的处理方法及装置、存储介质及电子设备
CN118778886A (zh) 硬盘管理的方法、装置、电子设备及存储介质
CN118227360A (zh) 信息获取方法、计算设备、信息获取装置及介质
CN118467426A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20201229

RJ01 Rejection of invention patent application after publication