时间同步方法及装置制造方法及图纸

技术编号:2843452 阅读:125 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种时间同步方法,其包括:主控CPU核根据内部定时器发出的定时器中断对系统时间存储模块中存储的系统时间进行累加,以获得当前的系统时间;主控CPU核将当前的系统时间写入系统时间存储模块;非主控CPU核收到获取系统时间的请求时,从系统时间存储模块读取当前的系统时间。本发明专利技术还涉及一种时间同步装置,该时间同步装置用于多核CPU系统,包括主控CPU核、一个或数个非主控CPU核和系统时间存储模块。本发明专利技术既可使非主控CPU核能够共享当前的系统时间,又不需定时器中断来同步系统时间,从而在保证系统时间的同步的同时,只需要主控CPU响应定时器中断,减少非主控CPU的中断开销,以此提高了系统性能。

【技术实现步骤摘要】

本专利技术涉及通信设备中系统时间同步技术,尤其是一种通信设备中时间同步方法,以及时间同步装置。
技术介绍
对于通信网中的各种通信设备或者计算机设备来说,设备内部的系统时间作为重要参数需要与协调世界时(Universal Time Coordinated,简称UTC)保持尽可能的同步,通常时间偏差被限定在足够小的范围内(如100ms)。为了保证时间同步能够顺利完成,时间同步网络中的各个节点时钟都需要利用专用的网络时间同步技术与UTC同步。在互联网络中,普遍采用网络时间协议(Network Time Protocol,简称NTP)作为互联网络中各种通信设备的系统时间的时间同步协议,时间同步的准确程度和NTP服务器与用户间的距离有关。对于通信设备内部的各个部件来说,也需要保证时间的同步性,在采用多核CPU的通信设备中,多核CPU中的各个CPU可以运行独立的任务,在报文处理上可采用流水线方式或者并行处理方式。如图1所示,为多核CPU中采用流水线方式的报文处理示意图,在流水线方式下,每个CPU完成报文处理的一部分。如图2所示,为多核CPU中采用并行处理方式的报文处理示意图,在并行处理方式下,每个CPU可以独立完成报文的全部处理。无论采用流水线的方式还是并行处理的方式,多核CPU之间时间同步在某些情况下是正确处理业务的前提。现有技术中关于多CPU之间时间的同步采用以下方式利用一个外部的定时器对各个CPU核按照周期同时发出定时器中断,所谓外部的定时器为一种可按照一定的周期发出定时器中断的设备,而各个CPU核在上电时会获取相同的系统时间初值,再根据接收到的定时器中断进行累加,以获得当前的系统时间,从而保证了各个CPU之间时间的同步。这种同步方式可保证各个CPU核之间的时间同步,但是这种定时器中断需要各个CPU核都进行响应,从而使得各个CPU的开销变大,导致系统的整个处理性能受到较大影响。
技术实现思路
本专利技术的目的是针对现有的多核CPU中时间同步时定时器中断对系统性能的影响等缺陷,提出一种时间同步方法,能够保证多核CPU内的系统时间一致,且不需要每个CPU核都处理定时器中断,以降低定时器中断对系统的处理性能的影响。本专利技术的另一目的是提出一种时间同步装置,能够保证多核CPU内的系统时间一致,且不需要每个CPU核都处理定时器中断,以降低定时器中断对系统的处理性能的影响。为买现上述目的,本专利技术提供了一种时间同步方法,包括以下步骤步骤1,主控CPU核根据内部定时器发出的定时器中断对系统时间存储模块中存储的系统时间进行累加,以获得当前的系统时间;步骤2,主控CPU核将所述当前的系统时间写入系统时间存储模块;步骤3,所述非主控CPU核收到获取系统时间的请求时,从所述系统时间存储模块读取所述当前的系统时间。在上述技术方案中,所述步骤1之前,主控CPU核在上电初始化时从时钟源读取时钟源内保存的系统时间初值。当采用硬件实时时钟作为时钟源时,由于硬件实时时钟内的编码方式与操作系统有所区别,例如硬件实时时钟采用BCD编码,而操作系统采用BIN(二进制)编码,因此需要进行格式转换。进一步地,步骤3之后,主控CPU核在掉电前将所述当前的系统时间写入时钟源,并由所述时钟源对所述当前的系统时间进行维护。可选地,步骤2具体为将所述当前的系统时间封装为存储在系统时间存储模块的软件设备,所述主控CPU核对该软件设备执行写入操作。采用对软件设备读写的方式可以解决多核间不能互访各自的内存区域的问题。进一步地,步骤3具体为所述非主控CPU核收到获取系统时间的请求时,对该软件设备执行读取操作。为实现上述目的,本专利技术提供了一种时间同步装置,该时间同步装置用于多核CPU系统,其包括主控CPU核、一个或数个非主控CPU核和用于存储系统时间的系统时间存储模块,该主控CPU核中包括内部定时器,用于按照周期发出定时器中断;累加模块,与所述内部定时器和系统时间存储模块相连,用于接收所述内部定时器发出的定时器中断对系统时间存储模块存储的系统时间进行累加,获得当前的系统时间,并写入系统时间存储模块;该一个或数个非主控CPU核包括接收请求模块,用于接收获取系统时间的请求;内存读取模块,与所述系统时间存储模块和接收请求模块相连,用于根据接收请求模块发送的获取系统时间的请求从所述系统时间存储模块读取所述当前的系统时间。在上述技术方案中,还可以包括时钟源,与所述累加模块相连,用于为所述主控CPU核提供系统时间初值。所述时钟源可为硬件实时时钟。基于上述的技术方案,本专利技术具有以下优点通过主控CPU核集中管理系统时间计算的硬件资源,并将系统时间写入系统时间存储模块,由其他非主控CPU核在需要时直接读取,这样既可以使非主控CPU核能够共享当前的系统时间,又不需要利用定时器中断来同步系统时间,从而在保证了系统时间的同步的同时,只需要主控CPU响应定时器中断,以此提高了系统性能。在实现上将当前的系统时间作为系统时间变量写入系统时间存储模块,并封装为一个软件设备,在软件设计和应用上可以利用统一的接口进行操作。下面通过附图和实施例,对本专利技术的技术方案做进一步的详细描述。附图说明图1为多核CPU中采用流水线方式的报文处理示意图。图2为多核CPU中采用并行处理方式的报文处理示意图。图3为本专利技术时间同步装置的一实施例的结构示意图。图4为本专利技术时间同步装置的另一实施例的结构示意图。图5为本专利技术时间同步方法的一实施例的流程示意图。图6为本专利技术时间同步方法的另一实施例的流程示意图。图7为本专利技术时间同步方法的又一实施例的流程示意图。图8为采用软件时钟方式的系统时间同步系统的结构示意图。具体实施例方式鉴于现有多CPU核通信设备中,各个CPU核在维护和同步系统时间时都需要使用内部定时器中断,从而影响系统性能,本专利技术采用一种集中式的时钟管理,不需要每个CPU核都去维护系统时间,从而既使CPU核能够共享当前的系统时间,又提高了系统性能。如图3所示,为本专利技术时间同步装置的一实施例的结构示意图,在本实施例中,系统时间同步系统包括主控CPU核1、系统时间存储模块2和其他的CPU核3。其中主控CPU核1能够对系统时间作集中式管理,而其他的CPU核3为非主控CPU核,不需对系统时间进行维护,只有在需要使用时才进行获取。在这个实施例中,适用于多CPU核通信设备为不常掉电的单板的情况,在初始上电时通过外部时钟源为主控CPU核提供系统时间初值或者利用预设的设备参数,再由主控CPU核1实现系统时间的维护。所谓外部时钟源可以为软件时钟源或者外部时钟源(例如硬件RTC),预设的设备参数可以为厂家写入到多核CPU的初始设备信息。如果单板需要经常的掉电和上电,那就需要采用外部的时钟源了。在主控CPU核1中包括内部定时器11和累加模块12,其中累加模块12可以接收内部定时器11按照周期发出的定时器中断,并将系统时间存储模块2中的系统时间进行累加,获得当前的系统时间,然后写回系统时间存储模块2。系统时间存储模块2中所存储的系统时间是在预设或接收外部时钟源的系统时间初值的基础上,根据内部定时器12发出的定时器中断不断累加获得的。非主控CPU核3包括接收请求模块31和内存读取模块32,当非主控CPU核3上运行的上层程序向非主控CPU核3中的接收请本文档来自技高网
...

【技术保护点】
一种时间同步方法,其包括以下步骤:步骤1,主控CPU核根据内部定时器发出的定时器中断对系统时间存储模块中存储的系统时间进行累加,以获得当前的系统时间;步骤2,主控CPU核将所述当前的系统时间写入所述系统时间存储模块; 步骤3,所述非主控CPU核收到获取系统时间的请求时,从所述系统时间存储模块读取所述当前的系统时间。

【技术特征摘要】
1.一种时间同步方法,其包括以下步骤步骤1,主控CPU核根据内部定时器发出的定时器中断对系统时间存储模块中存储的系统时间进行累加,以获得当前的系统时间;步骤2,主控CPU核将所述当前的系统时间写入所述系统时间存储模块;步骤3,所述非主控CPU核收到获取系统时间的请求时,从所述系统时间存储模块读取所述当前的系统时间。2.根据权利要求1所述的时间同步方法,其中所述步骤1之前,主控CPU核在上电初始化时,从时钟源读取时钟源内保存的系统时间初值。3.根据权利要求2所述的时间同步方法,其中所述主控CPU核在上电初始化时从时钟源读取该时钟源内保存的系统时间初值具体为主控CPU核在上电初始化时从硬件实时时钟读取该时钟源内保存的系统时间初值,并进行格式转换。4.根据权利要求1所述的时间同步方法,其中步骤3之后,主控CPU核在掉电前将所述当前的系统时间写入时钟源,并由所述时钟源对所述当前的系统时间进行维护。5.根据权利要求1所述的时间同步方法,其中步骤2具体为将所述当前的系统时间对应的变量封装为存储在系统时间存储模块的软件设备,所述主控...

【专利技术属性】
技术研发人员:郭昕
申请(专利权)人:杭州华三通信技术有限公司
类型:发明
国别省市:86[中国|杭州]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1