CN106899371A - 时间同步方法和装置 - Google Patents
时间同步方法和装置 Download PDFInfo
- Publication number
- CN106899371A CN106899371A CN201510957093.1A CN201510957093A CN106899371A CN 106899371 A CN106899371 A CN 106899371A CN 201510957093 A CN201510957093 A CN 201510957093A CN 106899371 A CN106899371 A CN 106899371A
- Authority
- CN
- China
- Prior art keywords
- time
- information data
- data bag
- time information
- pulse per
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W56/00—Synchronisation arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种时间同步方法,该方法包括:接收侧接收发送侧发送的时间信息数据包;所述接收侧校验所述时间信息数据包,并根据所述时间信息数据包获取时间信息;根据所述获取的时间信息,所述接收侧发起时间同步。本发明还公开了一种时间同步装置。本发明实现了在保障基站设备时间同步高精度的同时,降低了工程成本和维护成本,且避免了组网环境受限的问题。
Description
技术领域
本发明涉及移动通讯技术领域,尤其涉及一种时间同步方法和装置。
背景技术
目前,基站设备主要采用GNSS(Global Navigation Satellite System,全球导航卫星***)或者IEEE 1588(Institute of Electrical and ElectronicsEngineers 1588,电气和电子工程师协会1588协议,也即网络测量和控制***的精密时钟同步协议标准)进行时间同步。
其中,GNSS***泛指所有的卫星导航***,包括全球的、区域的和增强的,如美国的GPS、俄罗斯的Glonass、欧洲的Galileo、中国的北斗卫星导航***,以及相关的增强***,如美国的WAAS(广域增强***)、欧洲的EGNOS(欧洲静地导航重叠***)和日本的MSAS(多功能运输卫星增强***)等,还涵盖在建和以后要建设的其他卫星导航***。GNSS***是个多***、多层面、多模式的复杂组合***。当基站采用GNSS***进行时间同步时,时间精度高,但是硬件设备成本高,需要额外架设天线,需考虑基站选址、馈缆敷设的难易程度、安装成本等因素,同时,工程维护难度大。因此,若基站全部采用GNSS***进行时间同步,则会产生高昂的基站组网工程成本和维护成本。
IEEE 1588时间精度高,无需额外的时钟线,使用以太网的数据线传送时钟信号,使基站组网连接简化,同时,降低了工程成本和维护成本。但是,由于IEEE 1588使用以太网网进行信息的传输,时间同步的精度受到组网环境的影响,导致应用场景也受到限制,例如,若信息的传输经过多次交换、转发,或组网内的链路阻塞,会严重影响IEEE 1588的时间同步精度。
由此,可以看出,目前进行基站设备的时间同步,若需要保证精度,则耗费的工程成本和维护成本较高;若需要降低工程成本和维护成本,组网环境又要受限,否则无法保障时间同步的精度。
发明内容
本发明的主要目的在于提供一种时间同步方法和装置,旨在解决基站设备进行时间同步时,为保障时间同步,而导致工程及维护成本高、组网环境受限的技术问题。
为实现上述目的,本发明提供一种时间同步方法,所述时间同步方法包括以下步骤:
接收侧接收发送侧发送的时间信息数据包;
所述接收侧校验所述时间信息数据包,并根据所述时间信息数据包获取时间信息;
根据所述获取的时间信息,所述接收侧发起时间同步。
在一个实施例中,所述发送侧分片发送所述时间信息数据包,所述接收侧接收发送侧发送的时间信息数据包的步骤包括:
所述接收侧接收所述发送侧发送的时间信息数据包分片,并重装为时间信息数据包。
在一个实施例中,所述接收侧校验所述时间信息数据包,并根据所述时间信息数据包获取时间信息的步骤包括:
所述接收侧校验所述时间信息数据包是否正确且完整;
若所述时间数据包正确且完整,则根据所述时间信息数据包获取消息净荷,得到时间信息,所述消息净荷包括所述时间信息。
在一个实施例中,所述时间信息数据包包括帧头、消息头、消息长度域、消息净荷和帧校验序列域,所述接收侧校验所述时间信息数据包是否正确且完整的步骤包括:
所述接收侧根据所述帧头校验所述时间信息数据包是否正确,根据所述消息头校验所述时间信息数据包是否正确,根据所述消息长度域和所述消息净荷校验所述时间信息数据包是否完整,根据所述消息净荷和所述帧校验序列域校验所述时间信息数据包是否完整;
若所述帧头校验正确,且所述消息头校验正确,且所述消息长度域和所述消息净荷校验完整,且所述消息净荷和所述帧校验序列域校验完整,则判定所述时间信息数据包正确且完整。
在一个实施例中,所述接收侧校验所述时间信息数据包是否正确且完整的步骤之后,还包括:
若所述时间信息数据包不正确或不完整,则所述接收侧丢弃所述时间信息数据包。
在一个实施例中,所述发送侧分片发送所述时间信息数据包,所述时间信息数据包的消息头携带有本次时间同步的周期编号,所述接收侧校验所述时间信息数据包是否正确且完整的步骤之后,还包括:
根据所述周期编号校验所述发送侧发送的时间信息数据包分片是否正确;若所述周期编号校验正确,则转入执行步骤:若所述时间数据包正确且完整,则根据所述时间信息数据包获取消息净荷,得到时间信息,所述消息净荷包括所述时间信息;若所述周期编号校验不正确,则转入执行步骤:若所述时间信息数据包不正确或不完整,则所述接收侧丢弃所述时间信息数据包;
所述若所述时间信息数据包不正确或不完整,则所述接收侧丢弃所述时间信息数据包的步骤之后,还包括:
根据所述周期编号,获取在预设的质量检测周期内,所述时间信息数据包的丢包率;
若信息数据包的丢包率大于预设的阈值,则所述接收侧不发起时间同步。
在一个实施例中,所述时间同步包括绝对时间同步及/或秒脉冲同步,所述根据所述获取的时间信息,所述接收侧发起时间同步的步骤包括:
所述接收侧判断所述时间信息是否满足发起时间同步的预设条件;
若所述时间信息满足发起时间同步的预设条件,则发起绝对时间同步及/或秒脉冲同步。
在一个实施例中,所述若所述时间信息满足发起时间同步的预设条件,则发起绝对时间同步及/或秒脉冲同步的步骤包括:
若所述时间信息满足发起时间同步的预设条件,则所述接收侧根据所述时间信息发起绝对时间同步;
根据所述发送侧发送的时间信息数据包,恢复发送侧的秒脉冲信号;
根据所述发送侧的秒脉冲信号,调整所述接收侧本地的时钟频率,发起秒脉冲同步。
在一个实施例中,所述根据所述发送侧的秒脉冲信号,调整所述接收侧本地的时钟频率,发起秒脉冲同步的步骤包括:
根据所述发送侧的秒脉冲信号,获取与所述接收侧本地秒脉冲信号的相位偏差值;
判断所述相位偏差值是否超过预设的偏差阈值;
若所述相位偏差值超过预设的偏差阈值,则根据所述相位偏差值调整所述接收侧本地的时钟频率,获取所述接收侧调整后的秒脉冲信号,并转入执行步骤:根据所述发送侧的秒脉冲信号,获取与所述接收侧本地秒脉冲信号的相位偏差值;
若所述相位偏差值未超过预设的偏差阈值,则判定完成本次秒脉冲同步。
此外,为实现上述目的,本发明还提供一种时间同步装置,所述时间同步装置包括:
接收模块,用于接收发送侧发送的时间信息数据包;
信息模块,用于校验所述时间信息数据包,并根据所述时间信息数据包获取时间信息;
同步模块,用于根据所述获取的时间信息,发起时间同步。
在一个实施例中,所述发送侧分片发送所述时间信息数据包,所述接收模块还用于,
接收所述发送侧发送的时间信息数据包分片,并重装为时间信息数据包。
在一个实施例中,所述信息模块包括:
校验单元,用于校验所述时间信息数据包是否正确且完整;
信息单元,用于若所述时间数据包正确且完整,则根据所述时间信息数据包获取消息净荷,得到时间信息,所述消息净荷包括所述时间信息。
在一个实施例中,所述时间信息数据包包括帧头、消息头、消息长度域、消息净荷和帧校验序列域,所述校验单元还用于,
根据所述帧头校验所述时间信息数据包是否正确,根据所述消息头校验所述时间信息数据包是否正确,根据所述消息长度域和所述消息净荷校验所述时间信息数据包是否完整,根据所述消息净荷和所述帧校验序列域校验所述时间信息数据包是否完整;
若所述帧头校验正确,且所述消息头校验正确,且所述消息长度域和所述消息净荷校验完整,且所述消息净荷和所述帧校验序列域校验完整,则判定所述时间信息数据包正确且完整。
在一个实施例中,所述时间同步装置还包括:
丢弃模块,用于若所述时间信息数据包不正确或不完整,则丢弃所述时间信息数据包。
在一个实施例中,所述发送侧分片发送所述时间信息数据包,所述时间信息数据包的消息头携带有本次时间同步的周期编号,所述校验单元还用于,
根据所述周期编号校验所述发送侧发送的时间信息数据包分片是否正确;
所述时间同步装置还包括:
质检模块,用于根据所述周期编号,获取在预设的质量检测周期内,所述时间信息数据包的丢包率;若信息数据包的丢包率大于预设的阈值,则不发起时间同步。
在一个实施例中,所述时间同步包括绝对时间同步及/或秒脉冲同步,所述同步模块包括:
条件单元,用于判断所述时间信息是否满足发起时间同步的预设条件;
同步单元,用于若所述时间信息满足发起时间同步的预设条件,则发起绝对时间同步及/或秒脉冲同步。
在一个实施例中,所述同步单元包括:
绝对时间同步子单元,用于若所述时间信息满足发起时间同步的预设条件,则根据所述时间信息发起绝对时间同步;
秒脉冲同步子单元,用于根据所述发送侧发送的时间信息数据包,恢复发送侧的秒脉冲信号;根据所述发送侧的秒脉冲信号,调整本地的时钟频率,发起秒脉冲同步。
在一个实施例中,所述秒脉冲同步子单元还用于,
根据所述发送侧的秒脉冲信号,获取与本地秒脉冲信号的相位偏差值;
判断所述相位偏差值是否超过预设的偏差阈值;
若所述相位偏差值超过预设的偏差阈值,则根据所述相位偏差值调整本地的时钟频率,获取调整后的秒脉冲信号;
若所述相位偏差值未超过预设的偏差阈值,则判定完成本次秒脉冲同步。
本发明实施例提出的一种时间同步方法和装置,通过接收侧接收接发送侧发送的时间信息数据包;接收侧校验得到的时间信息数据包,并根据时间信息数据包获取时间信息;根据获取的时间信息,接收侧发起时间同步。本发明实施例通过发送侧获取时间信息,并将时间信息封装为时间信息数据包,使得接收侧可以根据时间信息数据包中的时间信息进行时间同步,避免了1588组网时时间信息数据包经过多次交换、转发降低时间精度,同时,由于发送侧通过无线接口向接收侧发送时间信息数据包,无需外加天线,降低了基站组网的建设成本和维护成本。本实施实现了在保障基站设备时间同步高精度的同时,降低了工程成本和维护成本,且避免了组网环境受限的问题。
附图说明
图1为本发明时间同步方法第一实施例的流程示意图;
图2为本发明时间同步方法第二实施例的流程示意图
图3为本发明时间同步方法第三实施例的流程示意图;
图4为本发明时间同步方法第三实施例中所述接收侧校验所述时间信息数据包是否正确且完整的步骤的细化流程示意图;
图5为本发明时间同步方法第五实施例的流程示意图;
图6为本发明时间同步方法第六实施例的流程示意图;
图7为本发明时间同步方法第七实施例的流程示意图;
图8为本发明时间同步方法第八实施例的流程示意图;
图9为本发明时间同步方法第九实施例的流程示意图;
图10为本发明时间同步装置第一实施例、第二实施例的功能模块示意图;
图11为本发明时间同步装置第三实施例、第四实施例的功能模块示意图;
图12为本发明时间同步装置第五实施例的功能模块示意图;
图13为本发明时间同步装置第六实施例的功能模块示意图;
图14为本发明时间同步装置第七实施例的功能模块示意图;
图15为本发明时间同步装置第八实施例、第九实施例的功能模块示意图;
图16为本发明实施例中一种应用场景示意图;
图17为本发明实施例中一种GNSS TOD帧的帧信息内容示意图;
图18为本发明实施例中一种秒脉冲信号同步示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:接收侧接收发送侧发送的时间信息数据包;所述接收侧校验所述时间信息数据包,并根据所述时间信息数据包获取时间信息;根据所述获取的时间信息,所述接收侧发起时间同步。
由于现有技术进行基站设备的时间同步,若需要保证精度,则耗费的工程成本和维护成本较高;若需要降低工程成本和维护成本,则组网环境又受限。
本发明提供一种解决方案,通过发送侧获取时间,并将时间信息封装为时间信息数据包,使得接收侧可以根据时间信息数据包中的时间信息进行时间同步,避免了使用IEEE 1588组网进行时间同步时,时时间信息数据包经过多次交换、转发降低时间精度。同时,由于发送侧通过无线接口向接收侧发送时间信息数据包,无需外加天线,降低了基站组网的建设成本和维护成本。本发明实现了在保障基站设备时间同步高精度的同时,降低了工程成本和维护成本,且避免了组网环境受限的问题。
参照图1,本发明时间同步方法第一实施例提供一种时间同步方法,所述时间同步方法包括:
步骤S10、接收侧接收发送侧发送的时间信息数据包。
本发明实施例以基站(base station,简称BS)设备的时间同步进行举例说明,参照图16,例如基站与基站之间的时间同步,基站与终端设备如手机等的时间同步。
本发明实施例中,基站设备发送侧与接收侧之间的通信主要采用无线接口进行,例如空中接口(Air Interface)。
本实施例中,将提供时间同步功能的基站作为发送侧,将待同步基站作为接收侧。
具体的,作为一种实施方式,在基站设备进行时间同步时,首先,接收侧接收发送侧发送的时间信息数据包。
发送侧作为宏基站,从GNSS(Global Navigation Satellite System,全球导航卫星***)或者IEEE 1588(Institute of Electrical and Electronics Engineers1588,电气和电子工程师协会1588协议,也即网络测量和控制***的精密时钟同步协议标准)获取授时,得到的时间精度高。当然,发送侧也可以从其他时间***获取授时,可以根据实际需要灵活设置。
然后,发送侧将得到的时间和本次时间同步的信息进行封装,得到时间信息数据包,例如GNSS TOD帧(Global Navigation Satellite System Time OfDay,全球导航卫星***时间)、1588同步帧。
其中,若发送侧从GNSS***获取时间,则封装得到的时间信息数据包为GNSS TOD帧。GNSS TOD帧包括帧头、消息头、消息长度域、消息净荷和帧校验序列域。可以将帧头、消息头、消息长度域、消息净荷和帧校验序列域作为校验信息,校验当前时间信息数据包的正确性和完整性;消息净荷为当前时间信息数据包携带的时间信息,时间信息包括发送侧的绝对时间、时间精度级别、链路传输时延(简称链路时延)、无线接口信号质量等信息。其中,发送侧的绝对时间为发送侧发送时间信息数据包时,发送侧的本地绝对时间;时间精度级别用于表征当前发送侧的时间精度,携带了时钟源、秒脉冲(pulse per second,简称pps)抖动量级等信息;链路时延用于表征当前发送侧与接收侧之间的链路传输时间,可以由发送侧测量得到;无线接口信号质量为当前发送侧的无线接口信号质量,可以由发送侧测量得到。当然,时间信息还可以包括其他信息,可以根据实际需要灵活设置。
若发送侧从IEEE 1588获取时间,则封装得到的时间信息数据包为1588帧。1588帧包括帧头、消息头、消息长度域、消息净荷和帧校验序列域。可以将帧头、消息头、消息长度域、消息净荷和帧校验序列域作为校验信息校验当前时间信息数据包的正确性和完整性;消息净荷为当前时间信息数据包携带的时间信息,时间信息包括1588header(消息头)、1588timestamp(时间戳)、链路时延和无线接口信号质量等。1588header记载了当前时间信息数据包携带的时间信息类型,消息长度域等信息;1588timestamp为发送侧发送时间信息数据包时,发送侧的本地绝对时间;链路时延用于表征当前发送侧与接收侧之间的链路传输时间,可以由发送侧测量得到;无线接口信号质量为当前发送侧的无线接口信号质量,可以由发送侧测量得到。当然,时间信息还可以包括其他信息,可以根据实际需要灵活设置。
发送侧通过无线接口周期性的向接收侧发送时间信息数据包,发送周期可以根据应用场景、时间同步的需求等因素根据实际情况进行灵活设置。
接收侧接收发送侧发送的时间信息数据包。
步骤S20、所述接收侧校验所述时间信息数据包,并根据所述时间信息数据包获取时间信息。
在接收侧收到发送侧发送的时间信息数据包后,接收侧校验得到的时间信息数据包,并根据时间信息数据包得到时间信息。
具体的,作为一种实施方式,首先,接收侧根据GNSS TOD帧或1588帧获取校验信息进行校验,判断收到的时间信息数据包是否正确、完整。
若接收侧收到的时间信息数据包正确且完整,则接收侧解析时间信息数据包得到时间信息。若当前的时间信息数据包为GNSS TOD帧,则得到的时间信息包括时间信息包括发送侧的绝对时间、时间精度级别、链路时延、无线接口信号质量等信息;若当前的时间信息数据包为1588帧,则得到的时间信息包括时间信息包括时间戳、链路时延、无线接口信号质量等信息。
若当前收到的时间信息数据包不正确或不完整,则作为一种实施方式,接收侧丢弃当前时间信息数据包。
由此,接收侧得到时间信息。
步骤S30、根据所述获取的时间信息,所述接收侧发起时间同步。
在得到时间信息后,接收侧根据得到的时间信息,发起时间同步。
具体的,作为一张实施方式,若当前时间信息数据包为GNSS TOD帧,则接收侧根据时间信息中的绝对时间、时间精度级别、链路时延进行接收侧本地的绝对时间同步。
然后,接收侧根据时间信息数据包恢复秒脉冲信号,并将恢复得到的秒脉冲信号作为参考秒脉冲。然后,接收侧根据得到的参考秒脉冲调整接收侧本地时钟晶体的频率,以使本地秒脉冲信号与参考秒脉冲信号同步。
若当前时间信息数据包为1588帧,则接收侧根据时间信息中的1588timestamp、链路时延进行接收侧本地的绝对时间同步。
然后,接收侧根据时间信息数据包恢复秒脉冲信号,并将恢复得到的秒脉冲信号作为参考秒脉冲。然后,接收侧根据得到的参考秒脉冲调整接收侧本地时钟晶体的频率,以使本地秒脉冲信号与参考秒脉冲信号同步。
由此,接收侧实现了本地绝对时间和秒脉冲的同步。
作为另一种实施方式,接收侧可以根据时间信息数据包中的无线信号接口质量判断是否发起本地时间同步。
若当前的无线信号接口质量差或不可用,则接收侧丢弃本次时间信息数据包,暂不进行时间同步,待无线信号接口质量较好或可用时再发起时间同步。
若当前的无线信号接口质量好或可用,则接收侧根据得到的时间信息,发起时间同步。
在本实施例中,接收侧接收接发送侧发送的时间信息数据包;然后,接收侧校验得到的时间信息数据包,并根据时间信息数据包获取时间信息;然后,根据获取的时间信息,接收侧发起时间同步。本实施例通过发送侧获取时间,并将时间信息封装为时间信息数据包,使得接收侧可以根据时间信息数据包中的时间信息进行时间同步,避免了使用IEEE 1588组网进行时间同步时,时时间信息数据包经过多次交换、转发降低时间精度。同时,由于发送侧通过无线接口向接收侧发送时间信息数据包,无需外加天线,降低了基站组网的建设成本和维护成本。本实施实现了在保障基站设备时间同步高精度的同时,降低了工程成本和维护成本,且避免了组网环境受限的问题。
进一步的,参照图2,本发明时间同步方法第二实施例提供一种时间同步方法,基于上述图1所示的实施例,所述发送侧分片发送所述时间信息数据包,所述步骤S10包括:
步骤S11、所述接收侧接收所述发送侧发送的时间信息数据包分片,并重装为时间信息数据包。
在本发明实施例中,发送侧可以将封装得到的时间信息数据包直接承接在无线接口的无线帧中发送给接收侧,也可以将时间信息数据包分片并承接在无线接口的无线帧中发送给接收侧,可根据实际需要灵活设置。
当发送侧将时间信息数据包分片发送给接收侧时,接收侧接收发送侧发送的时间信息数据包分片,并重装为时间信息数据包。
具体的,作为一种实施方式,以发送侧当前封装的时间信息数据包为GNSS TOD帧进行举例说明。
参照图17,GNSS TOD帧包括帧头、消息头、消息长度域、消息净荷和帧校验序列域。
其中,帧头可以由2个固定字节(byte)的SYNC CHAR(同步字符)组成,用于通知接收侧当前消息为时间同步消息,也即发送侧发送的时间信息数据包。例如,固定数值可以是0x43,0x43代表ASCII(American Standard Codefor Information Interchange,美国标准信息交换代码)码中的“C”字符;固定数值也可以是0x4D,0x4D代表ASCII码中的“M”字符。
消息头可以由4个字节组成,为消息类型和ID编号,消息分类用于表征当前GNSS TOD帧携带的时间信息类型,ID编号用于表征当前消息在消息周期中的编号。例如,使用固定数值0x8001表示当前的消息为GNSS TOD消息;使用无符号数0~65535表示当前时间信息数据包在时间同步周期中的编号。需要说明的是,时间同步周期为发送侧与接收侧进行时间同步的周期,可以根据实际需要灵活是指;发送侧将发送的时间信息数据包根据发送的时间顺序依次标号,以ID编号表征当前时间信息数据包的周期编号。
消息长度域,可以由4个字节组成,包含了消息净荷的长度。
帧校验序列域,可以为1个字节、2个字节或者4个字节等组成。1字节时,帧校验序列的多项式为G(x)=x8+x5+x4+1;2字节时,检验序列可以使用CRC(Cyclic Redundancy Check,循环冗余校验码)16来计算;4字节时,检验序列可以使用CRC32来计算。本实施例以帧校验序列域为2个字节,使用CRC16进行举例说明。
消息净荷,包括了时间信息的内容,如下表1所示,时间信息包括绝对时间、时间精度级别、链路时延和无线接口信号质量等。
表1
具体的,绝对时间包括周内秒、周数和LeapS(偏移量)。周内秒表征了GNSS时间周内秒,字节偏移量为0,数据类型为4byte(字节)的unsigned char(无符号字符),单位为s(秒);周数表征了GNSS时间周数,字节偏移量为4,数据类型为2byte的unsigned char,单位为week(周);LeapS表征了GNSS时间与UTC(Coordinated Universal Time,协调世界时)时的偏移量,字节偏移量为6,数据类型为1byte的signed char(有符号字符),单位为s。
时间精度级别包括秒脉冲状态、时钟源、TAcc(抖动量级)、时钟源工作状态和监控告警。
秒脉冲状态为当前秒脉冲的状态,字节偏移量为7,数据类型为1byte的unsigned char。例如,秒脉冲状态为0x00时,表征秒脉冲正常;秒脉冲状态为0x01时,表征时间同步设备原子钟为保持状态;秒脉冲状态为0x02时,表征秒脉冲不可用;秒脉冲状态为0x03时,表征时间同步设备高晶振为保持状态;秒脉冲状态为0x04时,表征传输承载设备保持;0x05及后续数值0xff为预留数值(reserved),可以添加其他秒脉冲状态。
时钟源为当前秒脉冲的时钟源,字节偏移量为8,数据类型为1byte的unsigned char。例如,时钟源为0x00时,表征时钟源为北斗星导航***;时钟源为0x01时,表征时钟源为GPS(Global Positioning System,全球定位***);时钟源为0x02时,表征时钟源为GLONASS(俄语中全球卫星导航***的缩写);时钟源为0x03时,表征时钟源为伽利略卫星导航***;时钟源为0x04时,表征时钟源为IEEE 1588;时钟源为0x05时,表征时钟源为NTP(Network Time Protocol,网络时间协议);0x06及后续数值0xff为预留数值(reserved),可以添加其他时钟源。
TAcc表征了秒脉冲的抖动量级,字节偏移量为9,数据类型为1byte的unsigned char。秒脉冲的抖动量范围为0至255个级别,抖动量每个级别15ns(纳秒),例如,TAcc为0时,表征秒脉冲的抖动量为0ns;TAcc为2时,表征秒脉冲的抖动量为30ns;以此类推,当TAcc为255时,当前秒脉冲抖动量过大,无意义。
时钟源工作状态表征了当前时钟源的工作状态,字节偏移量为10,数据类型为2byte的unsigned char。时钟源工作状态定义了GNSS的工作类型(GNSS Fix Type),表征工作质量的范围(range)为0至3。例如,时钟源工作状态为0x00时,表征当前no fix(无固定状态);时钟源工作状态为0x01时,表征当前dead reckoning only(只有航位推测);时钟源工作状态为0x02时,表征当前工作状态为2D平面;时钟源工作状态为0x03时,表征当前工作状态为3D立体;时钟源工作状态为0x04时,表征当前工作状态为GNSS+dead reckoning(GNSS和航位推测);时钟源工作状态为0x05时,表征当前Time only fix(仅定位时间);0x06及后续数值0xff为预留数值(reserved),可以添加其他时钟源工作状态。
监控警告表征了当前时钟源的状态告警,字节偏移量为12,数据类型为2byte的unsigned char。例如,监控警告为Bit0时,表征当前时钟源antenna open(天线开路);监控警告为Bit1时,表征当前时钟源antenna shorted(天线短路);监控警告为Bit2时,表征当前时钟源not tracking satellites(未监测到卫星);监控警告为Bit3时,表征当前时钟源survey in progress(正在进行调查);监控警告为Bit4时,表征当前时钟源no stored position(没有存储位置);监控警告为Bit5时,表征当前时钟源leap second pending(二次挂起);监控警告为Bit6时,表征当前时钟源in test mode(在测试模式);监控警告为Bit7时,表征当前时钟源position is questionable(位置存在疑问);监控警告为Bit8时,表征当前时钟源almanac not complete(年历不完整);监控警告为Bit9时,表征当前时钟源pps was generated(已生成秒脉冲);Bit10至Bit15为预留数值(reserved),可以添加其他监控警告。
链路时延为当前发送侧与接收侧之间的链路时延,由发起侧测量得到,字节偏移量为14,数据类型为2byte的unsigned char。链路时延以260.42ns(1chip,即1个无线基本帧时间)为一个时延级别,例如,链路时延为0x0时,表征当前链路无时延;链路时延为0x1时,表征当前链路时延为260.42ns(1chip,即1个无线基本帧时间);链路时延为0x2时,表征当前链路时延为520.84ns,以此类推;以链路时延为0x9600时,表征当前链路时延为10ms。0x9601及后续数值0xffff为预留数值(reserved),可以添加其他链路时延。
无线接口信号质量表征了当前发送侧的无线接口信号质量,字节偏移量为16,数据类型为1byte的unsigned char。例如,无线接口信号质量为0x0时,表征当前无线接口质量高;无线接口信号质量为0x1时,表征当前无线接口质量中;无线接口信号质量为0x2时,表征当前无线接口质量低;无线接口信号质量为0x3时,表征当前无线接口质量不可量。0x4及后续数值0xff为预留数值(reserved),可以添加其他无线接口信号质量。
另外,消息净荷预留3byte的数据,作为预留数值(reserved),用于添加其他信息。可得,消息净荷为20字节,也即20byte。
由此,发送侧封装的GNSS TOD帧为32字节,也即32byte。
然后,发送侧将GNSS TOD帧共计32byte的数据分为16个子帧,每个子帧2byte。发送侧通过无线接口向接收侧发送数据,将上述16个2byte的子帧分16次承载在无线接口的无线帧中,发送出去。其中消息净荷里的发送的绝对时间与发送侧的本地发送时刻保持一致。
接收侧收到发送侧发送的时间信息数据包分片,也即各个2byte的子帧后,将得到的子帧进行重装,得到时间信息数据包GNSS TOD帧。
作为另一种实施方式,以发送侧当前封装的时间信息数据包为1588帧进行举例说明。在本实施例中,1588帧携带的时间信息使用sync报文、followup报文或announce报文。当然,1588帧也可以使用其他类型的报文。
1588帧包括帧头、消息头、消息长度域、消息净荷和帧校验序列域。
其中,帧头可以由2个固定字节(byte)的SYNC CHAR(同步字符)组成,用于通知接收侧当前消息为时间同步消息,也即发送侧发送的时间信息数据包。例如,固定数值可以是0x43,0x43代表ASCII(American Standard Codefor Information Interchange,美国标准信息交换代码)码中的“C”字符;固定数值也可以是0x4D,0x4D代表ASCII码中的“M”字符。
消息头可以由4个字节组成,为消息类型和ID编号,消息分类用于表征当前1588帧携带的时间信息类型,ID编号用于表征当前消息在消息周期中的编号。例如,使用固定数值0x8002表示当前的消息为sync报文;使用固定数值0x8003表示当前的消息为followup报文;使用固定数值0x8004表示当前的消息为announce报文;使用无符号数0~65535表示当前时间信息数据包在时间同步周期中的编号。需要说明的是,时间同步周期为发送侧与接收侧进行时间同步的周期,可以根据实际需要灵活是指;发送侧将发送的时间信息数据包根据发送的时间顺序依次标号,以ID编号表征当前时间信息数据包的周期编号。
消息长度域,可以由4个字节组成,包含了消息净荷的长度。
帧校验序列域,可以为1个字节、2个字节或者4个字节等组成。1字节时,帧校验序列的多项式为G(x)=x8+x5+x4+1;2字节时,检验序列可以使用CRC(Cyclic Redundancy Check,循环冗余校验码)16来计算;4字节时,检验序列可以使用CRC32来计算。本实施例以帧校验序列域为2个字节,使用CRC16进行举例说明。
消息净荷,包括了时间信息的内容,当1588帧所携带的时间信息为sync报文或followup报文时,时间信息包括1588header(消息头)、1588timestamp(时间戳)、链路时延和无线接口信号质量等。当1588帧所携带的时间信息为announce报文时,时间信息包括1588header、1588timestamp、1588时间精度、链路时延和无线接口信号质量等。
如下表2所示,1588header包括携带有当前消息的类型等信息,共计34byte。
表2
其中,1588header携带的Message Type(消息类型),为Transport Specific(传输专用),字节偏移量为0,大小为1byte;Version PTP(Precision TimeProtocol Version,精确时钟同步协议版本),为reserved(预留的),字节偏移量为1,大小为1byte;Message length(消息长度)记录了当前消息净荷的长度,字节偏移量为2,大小为2byte;Domain number(长度域)字节偏移量为4,大小为1byte;reserved(预留)字节偏移量为5,大小为1byte;Flag field(标记字段)字节偏移量为6,大小为2byte;correction field(校正字段)字节偏移量为8,大小为8byte;reserved(预留)字节偏移量为16,大小为4byte;Source port Identity(源端口身份)字节偏移量为20,大小为10byte;sequenceID(序列ID)字节偏移量为30,大小为2byte;Control field(控制字符)字节偏移量为32,大小为1byte;Log message Interval(日志消息间隔)字节偏移量为33,大小为1byte。
1588timestamp为与UTC的时间差,包括6byte的秒位信息以及4byte的纳秒位信息,共计10byte。
1588时间精度仅在1588帧所携带的时间信息为announce报文时存在,共计20byte。1588时间精度包括时钟优先级、时钟等级、时钟精度、时钟抖动、时间源和传递跳数等信息。例如,时钟优先级表征了当前时钟的优先级别;时钟等级的取值范围0~255,数值越小,时钟的等级越高;时钟精度使用数值表征了时间精度;时钟抖动表征了当前时钟的抖动量;传递跳数表征了时间源到本节点的传递跳数,每传递一条加1;时间源表征了当前时间的来源,如卫星、内部时钟等。
链路时延表征了发送侧和接收侧之间链路的时延,在本实施例中,发送侧和接收侧不需要进行交互计算链路时延,链路时延可由发送侧测量得到。链路时延以260.42ns(1chip,即1个无线基本帧时间)为一个时延级别,例如,链路时延为0x0时,表征当前链路无时延;链路时延为0x1时,表征当前链路时延为260.42ns(1chip,即1个无线基本帧时间);链路时延为0x2时,表征当前链路时延为520.84ns,以此类推;以链路时延为0x9600时,表征当前链路时延为10ms。0x9601及后续数值0xffff为预留数值(reserved),可以添加其他链路时延。
无线接口信号质量表征了当前发送侧的无线接口信号质量。例如,无线接口信号质量为0x0时,表征当前无线接口质量高;无线接口信号质量为0x1时,表征当前无线接口质量中;无线接口信号质量为0x2时,表征当前无线接口质量低;无线接口信号质量为0x3时,表征当前无线接口质量不可量。0x4及后续数值0xff为预留数值(reserved),可以添加其他无线接口信号质量。
需要说明的是,链路时延和无线接口信号质量共计2byte。
另外,消息净荷预留2byte的数据,作为预留数值(reserved),用于添加其他信息。
可得,当1588帧携带的时间信息为sync报文或followup报文时,消息净荷为48byte;当1588帧携带的时间信息为announce报文时,消息净荷为68byte。
由此,可以得到1588帧共计60byte(时间信息为sync报文或followup报文时)或者80byte(时间信息为announce报文时)。然后,发送侧将1588帧对应的分为30或者40个子帧,每个子帧2byte。发送侧通过无线接口发送数据,将上述30个或者40个2byte的子帧分30次或者40次承载在无线接口的无线帧中,发送出去。其中消息净荷里的发送的绝对时间与发送侧本地的发送时刻保持一致。
接收侧收到发送侧发送的时间信息数据包分片,也即各个2byte的子帧后,将得到的子帧进行重装,得到时间信息数据包1588帧。
在本实施例中,发送侧分片发送所述时间信息数据包以适应网路链路的传输能力,提高传输效率,接收侧接收发送侧发送的时间信息数据包分片,并重装为时间信息数据包,从而进行时间同步。本实施例实现了时间信息数据包的多种方式发送,提高了时间信息数据包的传输效率,从而有效保证了接收侧时间同步的精度。
进一步的,参照图3,本发明时间同步方法第三实施例提供一种时间同步方法,基于上述图1或图2所示的实施例(本实施例以图1为例),所述步骤S20包括:
步骤S21、所述接收侧校验所述时间信息数据包是否正确且完整。
接收侧在获取发送侧发送的时间信息数据包后,校验时间信息数据包的正确性和完整性。
具体的,作为一种实施方式,时间信息数据包包括帧头、消息头、消息长度域、消息净荷和帧校验序列域。
首先,接收侧根据帧头校验时间信息数据包是否正确,是否为时间同步帧,例如GNSS TOD帧或1588帧。
接收侧根据消息头校验时间信息数据包携带的时间信息类型是否正确,是否为GNSS TOD帧对应的GNSS TOD消息,或者,是否为1588帧对应的sync报文、followup报文或announce报文。
接收侧根据消息长度域校验时间信息数据包携带的消息净荷是否完整。
接收侧根据消息净荷和帧校验序列域校验时间信息数据包是否完整。若不完整,则丢弃当前时间信息数据包。若完整,则确认当前时间信息数据包正确且完整。
若接收侧根据帧头校验正确,且根据消息头校验正确,且根据消息长度域校验完整,且根据消息净荷和帧校验序列域校验完整,则确认当前时间信息数据包正确且完整。
由此,接收侧得到当前时间信息数据包的校验结果。
步骤S22、若所述时间数据包正确且完整,则根据所述时间信息数据包获取消息净荷,得到时间信息,所述消息净荷包括所述时间信息。
若当前时间信息数据包正确且完整,则接收侧根据时间信息数据包得到消息净荷,消息净荷包括时间信息,从而,接收侧得到时间信息。
具体的,作为一种实施方式,以发送侧当前封装的时间信息数据包为GNSS TOD帧进行举例说明。
接收侧解析当前得到的时间信息数据包,得到消息净荷。消息净荷为发送侧在GNSS TOD帧中封装的时间信息,包括绝对时间、时间精度级别、链路时延和无线接口信号质量等。当然,发送侧封装的时间信息还可以包括其他信息,可以根据实际需要灵活设置。
由此,接收侧得到时间信息,包括绝对时间、时间精度级别、链路时延和无线接口信号质量等。
作为另一种实施方式,以发送侧当前封装的时间信息数据包为1588帧进行举例说明。
在本实施例中,1588帧携带的时间信息使用sync报文、followup报文或announce报文。当然,1588帧也可以使用其他类型的报文。
接收侧解析当前得到的时间信息数据包,得到消息净荷。消息净荷为发送侧在1588帧中封装的时间信息,若发送侧封装的时间信息为sync报文或followup报文时,消息净荷包括1588header、1588timestamp、链路时延和无线接口信号质量等;1588帧所携带的时间信息为announce报文时,消息净荷包括1588header、1588timestamp、1588时间精度、链路时延和无线接口信号质量等。
由此,接收侧得到时间信息。需要说明的是,当发送侧封装的时间信息为sync报文或followup报文时,时间信息包括1588header、1588timestamp、链路时延和无线接口信号质量等;1588帧所携带的时间信息为announce报文时,时间信息包括1588header、1588timestamp、1588时间精度、链路时延和无线接口信号质量等。
在本实施例中,接收侧校验当前得到的时间信息数据包是否正确且完整;若当前时间数据包正确且完整,则接收侧根据时间信息数据包获取消息净荷,得到时间信息,消息净荷包括时间信息。在本实施例中,发送侧将时间信息封装在时间信息数据包中,接收侧在获取时间信息数据包后,首先校验得到的时间信息数据包是否正确且完整,仅当时间信息数据包正确且完整才获取时间信息,避免不正确或不完整的数据包降低影响接收侧的时间同步,降低时间同步精度。本实施例实现了对时间信息数据包正确性和完整性的校验,提高了接收侧时间同步的正确性和精确性。
进一步的,参照图4,本发明实施例时间同步方法第四实施例提供一种时间同步方法,基于上述图3所示的实施例,所述时间信息数据包包括帧头、消息头、消息长度域、消息净荷和帧校验序列域,所述步骤S21包括:
步骤S211、所述接收侧根据所述帧头校验所述时间信息数据包是否正确,根据所述消息头校验所述时间信息数据包是否正确,根据所述消息长度域和所述消息净荷校验所述时间信息数据包是否完整,根据所述消息净荷和所述帧校验序列域校验所述时间信息数据包是否完整。
在本实施例中,发送侧发送的时间信息数据包均包括帧头、消息头、消息长度域、消息净荷和帧校验序列域。发送侧根据当前获取时间的时钟源工作状态,灵活选择GNSS或IEEE 1588获取时间,并封装得到GNSS TOD帧或1588帧。
在获取发送侧发送的时间信息数据包后,接收侧首先校验收到的时间信息数据包是否正确且完整。
具体的,作为一种实施方式,以发送侧当前封装的时间信息数据包为GNSS TOD帧进行举例说明。
接收侧根据帧头校验时间信息数据包是否正确。接收侧判断帧头的关键字是否为发送侧预先配置的0x43或0x4d,若帧头关键字是0x43或0x4d,则判定本次接收的时间信息数据包正确;否则判定本次接收的时间信息数据包不正确。
接收侧根据消息头校验时间信息数据包是否正确。接收侧获取消息头携带的消息类型关键字,由于接收侧在收到时间信息数据包前并不知道发送侧发送的时间信息类型,因此,接收侧判断消息类型关键字是否为0x8001、0x8002、0x8003或0x8004,也即判断当前时间信息数据包携带的时间信息是否为GNSS TOD消息、sync报文、followup报文或announce报文中的一种。若消息头的关键字是0x8001、0x8002、0x8003或0x8003,则判定本次接收的时间信息数据包正确;否则判定本次接收的时间信息数据包不正确。例如,消息头的关键字是0x8001,则判定本次接收的时间信息数据包正确,并根据0x8001获取当前时间信息数据包携带的时间信息为GNSS TOD消息。
接收侧根据消息长度域和消息净荷校验时间信息数据包是否完整。接收侧根据时间长度域获取当前时间信息数据包携带的消息净荷长度,例如消息长度域为0x14时,表征当前消息净荷长度为20byte。然后,若发送侧整体发送本次时间信息数据包,则判断当前消息净荷的长度是否为20byte,若消息净荷的长度为20byte,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。若发送侧分片发送本次时间信息数据包,则分10次、每次2byte接收发送侧发送的消息净荷,并在重装得到时间信息数据包后判断当前消息净荷的长度是否为20byte,若消息净荷的长度为20byte,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。
接收侧根据消息净荷和帧校验序列域校验时间信息数据包是否完整。接收侧将收到的20byte的消息净荷和帧校验序列进行1次CRC16校验计算,若计算得到固定序列x15~x0:0001110100001111,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。
由此,接收侧得到校验结果。
作为另一种实施方式,以发送侧当前封装的时间信息数据包为1588帧进行举例说明。
接收侧根据帧头校验时间信息数据包是否正确。接收侧判断帧头的关键字是否为发送侧预先配置的0x43或0x4d,若帧头关键字是0x43或0x4d,则判定本次接收的时间信息数据包正确;否则判定本次接收的时间信息数据包不正确。
接收侧根据消息头校验时间信息数据包是否正确。接收侧获取消息头携带的消息类型关键字,由于接收侧在收到时间信息数据包前并不知道发送侧发送的时间信息类型,因此,接收侧判断消息类型关键字是否为0x8001、0x8002、0x8003或0x8004,也即判断当前时间信息数据包携带的时间信息是否为GNSS TOD消息、sync报文、followup报文或announce报文中的一种。若消息头的关键字是0x8001、0x8002、0x8003或0x8003,则判定本次接收的时间信息数据包正确;否则判定本次接收的时间信息数据包不正确。例如,消息头的关键字是0x8002,则判定本次接收的时间信息数据包正确,并根据0x8002获取当前时间信息数据包携带的时间信息为sync报文。
接收侧根据消息长度域和消息净荷校验时间信息数据包是否完整。接收侧根据时间长度域获取当前时间信息数据包携带的消息净荷长度,例如,消息长度域为0x30时,表征当前消息净荷长度为48byte。然后,若发送侧整体发送本次时间信息数据包,则判断当前消息净荷的长度是否为48byte,若消息净荷的长度为48byte,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。若发送侧分片发送本次时间信息数据包,则分24次、每次2byte接收发送侧发送的消息净荷,并在重装得到时间信息数据包后判断当前消息净荷的长度是否为48byte,若消息净荷的长度为48byte,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。消息长度域为0x44时,表征当前消息净荷长度为60byte。然后,若发送侧整体发送本次时间信息数据包,则判断当前消息净荷的长度是否为60byte,若消息净荷的长度为60byte,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。若发送侧分片发送本次时间信息数据包,则分30次、每次2byte接收发送侧发送的消息净荷,并在重装得到时间信息数据包后判断当前消息净荷的长度是否为60byte,若消息净荷的长度为60byte,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。
接收侧根据消息净荷和帧校验序列域校验时间信息数据包是否完整。接收侧将收到的48byte或60byte的消息净荷和帧校验序列进行1次CRC16校验计算,若计算得到固定序列x15~x0:0001110100001111,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。
由此,接收侧得到校验结果。
需要说明的是,在本实施例中,若发送侧分片发送时间信息数据包,则接收侧可以在收到时间信息数据包分片后,根据收到的时间信息数据包分片分别进行校验,校验方法同上所述,并得到校验结果。
步骤S212、若所述帧头校验正确,且所述消息头校验正确,且所述消息长度域和所述消息净荷校验完整,且所述消息净荷和所述帧校验序列域校验完整,则判定所述时间信息数据包正确且完整。
若接收侧根据帧头校验本次时间信息数据包正确,并且根据消息头校验本次时间信息数据包正确,并且根据消息净荷和帧校验序列域校验本次时间信息数据包完整,并且根据消息净荷和帧校验序列域校验本次时间信息数据包完整,则接收侧判定本次收到的时间信息数据包正确且完整;否则,接收侧判定本次收到的时间信息数据包不正确或不完整。
由此,接收侧得到对本次收到的时间信息数据包的校验结果。
在本实施例中,接收侧根据帧头校验时间信息数据包是否正确,根据消息头校验时间信息数据包是否正确,根据消息长度域和消息净荷校验时间信息数据包是否完整,根据消息净荷和帧校验序列域校验时间信息数据包是否完整;若帧头校验正确,且消息头校验正确,且消息长度域和消息净荷校验完整,且消息净荷和帧校验序列域校验完整,则判定接收侧本次收到的时间信息数据包正确且完整。本实施例通过多种方式对时间信息数据包进行校验,实现了对时间信息数据包正确性和完整性的多重校验,接收侧仅根据正确且完整的时间信息数据包进行时间同步,提高了接收侧时间同步的正确性和精确性。
进一步的,参照图5,本发明时间同步方法第五实施例提供一种时间同步方法,基于上述图4所示的实施例,所述步骤S21之后还包括:
步骤S40、若所述时间信息数据包不正确或不完整,则所述接收侧丢弃所述时间信息数据包。
在接收侧根据帧头校验时间信息数据包是否正确,根据消息头校验时间信息数据包是否正确,根据消息长度域和消息净荷校验时间信息数据包是否完整,根据消息净荷和帧校验序列域校验时间信息数据包是否完整,并得到校验结果后,若本次收到的时间信息数据包不正确或不完整,则接收侧丢弃本次收到的时间信息数据包,不用于接收侧的时间同步。
然后,接收侧接收发送侧发送的下一个时间信息数据包,并进行校验。
在本实施例中,若本次收到的时间信息数据包不正确或不完整,则接收侧丢弃当前时间信息数据包。本实施例实现了对时间信息数据包质量的把控,当时间信息数据包的质量不能满足预设的要求,则接收侧丢弃该时间信息数据包。本实施例通过对时间信息数据包的质量把控,提高的接收侧的时间同步正确性和精确度。
进一步的,参照图6,本发明时间同步方法第六实施例提出一种时间同步方法,基于上述图5所示的实施例,所述发送侧分片发送所述时间信息数据包,所述时间信息数据包的消息头携带有本次时间同步的周期编号,所述步骤S21之后还包括:
步骤S23、根据所述周期编号校验所述发送侧发送的时间信息数据包分片是否正确;若所述周期编号校验正确,则转入执行步骤S22;若所述周期编号校验不正确,则转入执行步骤S40。
在本实施例中,发送侧周期性的向接收侧发送时间信息数据包,接收侧根据收到的时间信息数据包进行时间同步。需要说明的是,发送侧发送时间信息数据包时携带的周期编号,与接收侧进行时间同步的周期编号保持同步。
发送侧发送的时间信息数据包中,消息头携带的ID编号,即为本次时间同步的周期编号。例如,发送侧使用无符号数0~65535作为ID编号,表示当前时间信息数据包在时间同步周期中的编号,也即本次时间同步的周期编号。
具体的,作为一种实施方式,发送侧根据时间信息数据包的发送时间顺序,依次对时间信息数据包的消息头进行ID编号。当发送侧分片发送时间信息数据包时,时间信息数据包的各分片中均携带有相同的、本次时间同步的周期编号,周期编号对于各分片字节量大小的影响可忽略不计。
接收侧收到时间信息数据包分片后,获取各时间信息数据包分片携带的周期编号。
然后,接收侧根据当前时间同步周期,判断收到的时间信息数据包分片携带的周期编号是否为本次时间同步周期的周期编号。若收到的时间信息数据包分片携带的周期编号是本次时间同步周期的周期编号,则判定此时间信息数据包分片正确;否则,判定当前时间信息数据包不正确。
同时,接收侧根据收到的时间信息数据包分片携带的周期编号是否相同,判断收到的时间信息数据包分片是否为同一个时间信息数据包的分片。
若接收侧在本次时间同步周期内,收到的时间信息数据包分片携带相同的周期编号,且时间信息数据包分片的周期编号与本次时间同步周期的周期编号相同,则判定发送侧发送的时间信息数据包分片正确。否则,判定发送侧发送的时间信息数据包分片不正确。
若当前发送侧发送的时间信息数据包分片正确,则接收侧根据时间信息数据包获取消息净荷,得到时间信息。
若当前发送侧发送的时间信息数据包分片不正确,则接收侧丢弃当前收到的时间信息数据包。
作为另一种实施方式,发送侧分片发送时间信息数据包时,接收侧可以在接收时间信息数据包分片时进行校验;若时间信息数据包分片正确,则重装时间信息数据包分片得到时间信息数据包;若时间信息数据包分片不正确,则丢弃时间信息数据包分片,接收侧不根据本次收到的时间信息数据分片重装时间信息数据包。
所述步骤S23之后,还包括:
步骤S50、根据所述周期编号,获取在预设的质量检测周期内,所述时间信息数据包的丢包率。
当发送侧整体发送时间信息数据包或分片发送时间信息数据包时,接收侧均可以根据收到的时间信息数据包周期编号,得到预设的质量检测周期内,时间信息数据包的丢包率。
其中,预设的质量检测周期为接收侧预先配置的时间同步信号质量检测周期,可以根据接收侧的应用场景或对于信号质量的实际需求灵活设置。
由于发送侧对时间信息数据包消息头携带的ID编号为连续且不同的编号,因此,接收侧根据收到的时间信息数据包周期编号,可以识别不同的时间信息数据包,从而得到接收侧收到的时间信息数据包数量。当然,还可以通过周期编号获取发送侧发送时间信息数据包的连续性。
本实施例中,取正确且完整的时间信息数据包为可用数据包,取不正确或不完整的时间信息数据包为不可用数据包。
具体的,作为一种实施方式,接收侧根据周期编号,分别记录可用数据包和丢弃的不可用数据包,得到数据包记录。
接收侧可以根据数据包记录,获取预设的质量检测周期内,接收侧收到的可用数据包和不可用数据包的总数,也即接收侧收到的数据包总数。
接收侧可以根据数据包记录,获取预设的质量检测周期内,接收侧收到的不可用数据包数量。
然后,接收侧计算不可用数据包数量占收到的数据包总数的比例,得到接收侧的丢包率,也即时间信息数据包的丢包率。
由此,接收侧得到预设的质量检测周期内,时间信息数据包的丢包率。
步骤S60、若信息数据包的丢包率大于预设的阈值,则所述接收侧不发起时间同步。
在获取接收侧的丢包率后,若在预设的质量检测周期内,接收侧的丢包率大于预设的阈值,也即接收侧对于时间信息数据包丢包率超过预设的阈值,则当前可能由于发送侧的故障或链路等原因导致时间信息数据包的质量差。
作为一种实施方式,接收侧不根据此段质量检测周期内的时间信息数据包发起时间同步。
然后,接收侧继续根据发送侧发送的时间信息数据包进行校验。
当在任一质量检测周期内,接收侧对于时间信息数据包的丢包率小于或等于预设的阈值时,接收侧再根据此周期内的时间信息数据包发起时间同步。
需要说明的是,预设的阈值为预先配置的比例值,可以根据不同的应用场景或接收侧对于时间信息数据包的质量要求进行灵活设置。
在本实施例中,发送侧分片发送时间信息数据包,时间信息数据包的消息头携带有本次时间同步的周期编号;接收侧根据周期编号校验发送侧发送的时间信息数据包分片是否正确;若周期编号校验正确,则本次收到的时间信息数据包正确且完整,接收侧获取时间信息进行时间同步;若周期编号校验不正确,则接收侧丢弃当前时间信息数据包;然后,接收侧根据周期编号,获取在预设的质量检测周期内,时间信息数据包的丢包率;若丢包率大于预设的阈值,则接收侧暂不发起时间同步。本实施例实现了通过周期编号判断时间信息数据包分片的正确性,提高了对时间信息数据包质量把控的严格程度,当时间信息数据包的质量不能满足预设的要求,则接收侧暂不发起时间同步,待时间信息数据包的质量满足预设的要求后再启动时间同步。本实施例通过对时间信息数据包的质量把控,提高的接收侧的时间同步正确性和精确度。
进一步的,参照图7,本发明时间同步方法第七实施例提供一种时间同步方法,基于上述图1至图6任一项所示的实施例(本实施例以图6为例),所述时间同步包括绝对时间同步及/或秒脉冲同步,所述步骤S30包括:
步骤S31、所述接收侧判断所述时间信息是否满足发起时间同步的预设条件。
在根据时间信息数据包得到时间信息后,接收侧判断得到的时间信息是否满足发起时间同步的预设条件。
具体的,作为一种实施方式,发起时间同步的预设条件为接收侧预先配置的、对于当前时间信息的要求,可以包括对于时钟源的抖动量级要求、对于时钟源工作状态的要求、对于时钟源状态告警的要求、对于链路延时的要求和对于无线接口信号质量的要求等。接收侧可以根据自身应用场景或对于时间信息数据包的质量要求,灵活设置发起时间同步的条件,例如,发起时间同步的预设条件为无线接口信号质量好、链路延时不能超过530ns。
以当前接收侧预先配置的发起时间同步的条件为:无线接口信号质量为高或中,进行举例说明。
若得到的时间信息中,无线接口信号质量为0x0,则接收侧判定当前无线接口质量高,当前时间信息满足发起时间同步的预设条件。
若得到的时间信息中,无线接口信号质量为0x3,则接收侧判定当前无线接口不可用,当前时间信息不满足发起时间同步的预设条件。
由此,接收侧得到判定结果。
步骤S32、若所述时间信息满足发起时间同步的预设条件,则发起绝对时间同步及/或秒脉冲同步。
在得到判定结果后,若当前时间信息满足发起时间同步的预设条件,则接收侧发起时间同步,接收侧的时间同步包括绝对时间同步及/或秒脉冲同步。
具体的,作为一种实施方式,以当前以发送侧当前封装的时间信息数据包为GNSS TOD帧进行举例说明。
接收侧获取的时间信息包括绝对时间、时间精度级别、链路时延和无线接口信号质量。
接收侧可以根据发送侧的绝对时间和链路时延,同步本地的绝对时间。
接收侧可以根据一定时间范围内,多个时间信息数据包的绝对时间、链路时延恢复发送侧的秒脉冲信号。然后,将恢复得到的秒脉冲信号作为参考秒脉冲。然后,接收侧根据得到的参考秒脉冲调整接收侧本地时钟晶体的频率,以使本地秒脉冲信号的相位达到参考秒脉冲。
由此接收侧实现本地绝对时间的同步,及/或本地秒脉冲的同步。
作为另一种实施方式,以当前以发送侧当前封装的时间信息数据包为1588帧进行举例说明。
接收侧获取的时间信息包括1588header、1588timestamp、链路时延和无线接口信号质量。当时间信息为announce报文时,时间信息另外还包括1588时间精度。
接收侧可以根据发送侧的1588timestamp和链路时延,同步本地的绝对时间。
接收侧可以根据一定时间范围内,多个时间信息数据包的1588timestamp、链路时延恢复发送侧的秒脉冲信号。然后,将恢复得到的秒脉冲信号作为参考秒脉冲。然后,接收侧根据得到的参考秒脉冲调整接收侧本地时钟晶体的频率,以使本地秒脉冲信号的相位达到参考秒脉冲。
由此接收侧实现本地绝对时间的同步,及/或本地秒脉冲的同步。
在本实施例中,接收侧判断得到的时间信息是否满足发起时间同步的预设条件;若时间信息满足发起时间同步的预设条件,则接收侧发起绝对时间同步及/或秒脉冲同步。本实施在时间信息满足发起时间同步的预设条件时,根据时间信息发起绝对时间同步及/或秒脉冲同步,实现了根据时间信息的精度等因素灵活把握是否要发起时间同步,有效提高了接收侧时间同步的精准性。
进一步的,参照图8,本发明时间同步方法第八实施例提供一种时间同步方法,基于上述图7所示的实施例,所述步骤S32包括:
步骤S321、若所述时间信息满足发起时间同步的预设条件,则所述接收侧根据所述时间信息发起绝对时间同步。
若得到的时间信息满足发起时间同步的预设条件,则接收侧根据时间信息发起绝对时间同步。
具体的,作为一种实施方式,以当前以发送侧当前封装的时间信息数据包为GNSS TOD帧进行举例说明。
接收侧根据时间信息中的绝对时间、链路时延和接收侧接收时间信息数据包的本地时间,发起绝对时间同步。
例如,将发送侧的绝对时间T1加上链路时延T2,得到接收侧接收时间信息数据包时的发送侧绝对时间T3。
若接收侧接收时间信息数据包的本次时间为T4,则接收侧根据T3与T4的时间差得到接收侧与发送侧的绝对时间差,并根据得到的绝对时间差调整本地的绝对时间,从而实现接收侧本地绝对时间的同步。
作为另一种实施方式,以当前以发送侧当前封装的时间信息数据包为1588帧进行举例说明。
接收侧根据时间信息中的1588timestamp、链路时延和接收侧接收时间信息数据包的本地时间,发起绝对时间同步。
例如,将发送侧1588timestamp的时间T1加上链路时延T2,得到接收侧接收时间信息数据包时的发送侧绝对时间T3。
若接收侧接收时间信息数据包的本次时间为T4,则接收侧根据T3与T4的时间差得到接收侧与发送侧的绝对时间差,并根据得到的绝对时间差调整本地的绝对时间,从而实现接收侧本地绝对时间的同步。
由此,接收侧实现绝对时间的同步。
步骤S322、根据所述发送侧发送的时间信息数据包,恢复发送侧的秒脉冲信号。
接收侧根据收到的时间信息数据包,可以恢复得到发送侧的秒脉冲信号。
具体的,作为一种实施方式,由于发送侧使用固定的频率发送时间信息数据包,例如,发送侧每隔10ms(毫秒)发送一次时间信息数据包,则发送侧每秒发送100个时间信息数据包。取当前发送侧发送的第一个时间信息数据包的绝对时间为0秒时刻,则发送侧发送第101个时间信息数据包的绝对时间为1秒时刻,可以将此第1个和第101个时间信息数据包的秒位时间作为发送侧的秒脉冲。
由此,接收侧得到发送侧的秒脉冲信号。
当然,接收侧还可以通过其他方式恢复发送侧的秒脉冲信号,可根据实际需要灵活设置。
步骤S323、根据所述发送侧的秒脉冲信号,调整所述接收侧本地的时钟频率,发起秒脉冲同步。
在获取发送侧的秒脉冲信号后,接收侧根据发送侧的秒脉冲信号,调整本地的时钟频率,进行秒脉冲同步。
具体的,作为一种实施方式,参照图20,接收侧使用锁相环(Phase LockedLoop,简称PLL)路对接收侧进行秒脉冲信号同步。
在获取发送侧的秒脉冲信号后,接收侧控制鉴相器PD(phasedetector)根据发送侧的秒脉冲信号与本地的秒脉冲信号进行鉴相,并得到相位偏差值。然后,鉴相器将相位偏差值转化为电压的变化,输出模拟电压信号,并通过低通滤波器LPF(Low Pass Filter)虑除高频杂波。
然后,恒温晶体振荡器OCXO(Oven Controlled Crystal Oscillator)接收低通滤波器LPF的信号,并将得到的电压信号作为压控电压,控制本地时钟晶体的震荡,并输出本地时钟晶体的震荡频率。
然后,分频器将OXCO输出的频率反馈给鉴相器,用于判断当前本地时钟的秒脉冲信号是否与输入的参考秒脉冲信号同步。
若当前本地时钟的秒脉冲信号与输入的参考秒脉冲信号同步,则不再进行本地秒脉冲信号的调整,由PLL进行锁相,保持当前的本地时钟震荡频率,使本地时钟震荡频率与发送侧的时钟震荡频率保持一致。
若当前本地时钟的秒脉冲信号与输入的参考秒脉冲信号不同步,则鉴相器PD继续鉴相,调节本地时钟的震荡频率。
需要说明的是,本地时钟可以是铷钟,也可以是其他时钟,可以根据实际需要灵活设置。
由此,接收侧实现秒脉冲同步。
在本实施例中,若得到的时间信息满足发起时间同步的预设条件,则接收侧根据时间信息发起绝对时间同步;接收侧根据发送侧发送的时间信息数据包,恢复发送侧的秒脉冲信号;然后,接收侧根据发送侧的秒脉冲信号,调整接收侧本地的时钟频率,进行秒脉冲同步。本实施例通过根据时间信息数据包携带的时间信息进行绝对时间同步,并根据收到的时间信息数据包恢复发送侧的秒脉冲信号,实现了本地秒脉冲的同步,提高了接收侧本地绝对时间和秒脉冲的同步精度。
进一步的,参照图9,本发明时间同步方法第九实施例提供一种时间同步方法,基于上述图8所示的实施例,所述步骤S323包括:
步骤S3231、根据所述发送侧的秒脉冲信号,获取与所述接收侧本地秒脉冲信号的相位偏差值。
在获取发送侧秒脉冲信号后,将发送侧的秒脉冲信号作为参考秒脉冲信号,获取与接收侧本地秒脉冲信号的相位偏差值。
具体的,作为一种实施方式,接收侧将参考秒脉冲信号与本地秒脉冲信号进行鉴相,并得到参考秒脉冲信号与本地秒脉冲信号的相位偏差值。
步骤S3232、判断所述相位偏差值是否超过预设的偏差阈值。
在得到相位偏差值后,接收侧判断相位偏差值是否满足预设的偏差阈值。
需要说明的时,预设的偏差阈值为接收侧根据应用场景或对于本地秒脉冲的精度要求预先配置的。例如,若接收侧对于本地秒脉冲的误差要求不严格,则可以设置数值较大的偏差阈值;若接收侧对于本地秒脉冲的误差要求严格,则可以设置数值较小的偏差阈值。
若相位偏差值大于预设的偏差阈值,则判定相位偏差值超过预设的偏差阈值;若相位偏差值小于或等于预设的偏差阈值,则判定相位偏差值未超过预设的偏差阈值。
由此,接收侧得到判定结果。
步骤S3233、若所述相位偏差值超过预设的偏差阈值,则根据所述相位偏差值调整所述接收侧本地的时钟频率,获取所述接收侧调整后的秒脉冲信号,并转入执行步骤S3231。
若相位偏差值超过预设的偏差阈值,则接收侧根据相位偏差值调整接收侧本地的时钟频率。
具体的,作为一种实施方式,接收侧将相位偏差值转化为电压信号的变化,并根据得到的电压信号控制本地时钟晶体的震荡。
然后,接收侧获取本地时钟晶体调整后的震荡频率,并根据调整后的震荡频率得到接收侧调整后的秒脉冲信号。
然后,接收侧将参考秒脉冲信号与调整后的接收侧本地秒脉冲信号进行鉴相,并得到参考秒脉冲信号与调整后的本地秒脉冲信号的相位偏差值。
然后,判断本次的相位偏差阈值是否超过预设的偏差阈值,若超过,则继续调整本地时钟的震荡频率。
步骤S3234、若所述相位偏差值未超过预设的偏差阈值,则判定完成本次秒脉冲同步。
若相位偏差值未超过预设的偏差阈值,则接收侧认为当前本地时钟秒脉冲信号与参考秒脉冲信号的误差符合当前的使用需求,判定完成本次秒脉冲同步。
由此,接收侧完成本地秒脉冲的同步。
在本实施例中,接收侧根据发送侧的秒脉冲信号,获取与本地秒脉冲信号的相位偏差值;判断相位偏差值是否超过预设的偏差阈值;若相位偏差值超过预设的偏差阈值,则根据相位偏差值调整接收侧本地的时钟频率,获取接收侧调整后的秒脉冲信号,并获取调整后的秒脉冲信号与发送侧秒脉冲信号的相位差值,根据相位差值进行下一步的操作;若相位偏差值未超过预设的偏差阈值,则接收侧判定完成本次秒脉冲同步。本实施例通过预先配置偏差阈值,仅当接收侧本地秒脉冲信号与发送侧秒脉冲信号的相位差值超过偏差阈值时,发起秒脉冲同步,直至接收侧本地秒脉冲信号与发送侧秒脉冲信号的相位偏差值小于或等于偏差阈值;当接收侧本地秒脉冲信号与发送侧秒脉冲信号的相位差值未超过偏差阈值时,判定完成本次接收侧的秒脉冲同步。本实施通过预设偏差阈值,实现了灵活把握接收侧本地秒脉冲信号与发送侧秒脉冲信号的误差,从而保障了接收侧本地秒脉冲同步的精度。
参照图10,本发明时间同步装置第一实施例提供一种时间同步装置,所述时间同步装置包括:
接收模块10,用于接收发送侧发送的时间信息数据包。
本发明实施例以基站(base station,简称BS)设备的时间同步进行举例说明,参照图16,例如基站与基站之间的时间同步,基站与终端设备如手机等的时间同步。
本发明实施例中,基站设备发送侧与接收侧之间的通信主要采用无线接口进行,例如空中接口(Air Interface)。
本实施例中,将提供时间同步功能的基站作为发送侧,将待同步基站作为接收侧。接收侧通过时间同步装置实现时间同步功能。
具体的,作为一种实施方式,在基站设备进行时间同步时,首先,接收模块10接收发送侧发送的时间信息数据包。
发送侧作为宏基站,从GNSS(Global Navigation Satellite System,全球导航卫星***)或者IEEE 1588(Institute of Electrical and Electronics Engineers1588,电气和电子工程师协会1588协议,也即网络测量和控制***的精密时钟同步协议标准)获取授时,得到的时间精度高。当然,发送侧也可以从其他时间***获取授时,可以根据实际需要灵活设置。
然后,发送侧将得到的时间和本次时间同步的信息进行封装,得到时间信息数据包,例如GNSS TOD帧(Global Navigation Satellite System Time OfDay,全球导航卫星***时间)、1588同步帧。
其中,若发送侧从GNSS***获取时间,则封装得到的时间信息数据包为GNSS TOD帧。GNSS TOD帧包括帧头、消息头、消息长度域、消息净荷和帧校验序列域。可以将帧头、消息头、消息长度域、消息净荷和帧校验序列域作为校验信息,校验当前时间信息数据包的正确性和完整性;消息净荷为当前时间信息数据包携带的时间信息,时间信息包括发送侧的绝对时间、时间精度级别、链路传输时延(简称链路时延)、无线接口信号质量等信息。其中,发送侧的绝对时间为发送侧发送时间信息数据包时,发送侧的本地绝对时间;时间精度级别用于表征当前发送侧的时间精度,携带了时钟源、秒脉冲(pulse per second,简称pps)抖动量级等信息;链路时延用于表征当前发送侧与时间同步装置之间的链路传输时间,可以由发送侧测量得到;无线接口信号质量为当前发送侧的无线接口信号质量,可以由发送侧测量得到。当然,时间信息还可以包括其他信息,可以根据实际需要灵活设置。
若发送侧从IEEE 1588获取时间,则封装得到的时间信息数据包为1588帧。1588帧包括帧头、消息头、消息长度域、消息净荷和帧校验序列域。可以将帧头、消息头、消息长度域、消息净荷和帧校验序列域作为校验信息校验当前时间信息数据包的正确性和完整性;消息净荷为当前时间信息数据包携带的时间信息,时间信息包括1588header(消息头)、1588timestamp(时间戳)、链路时延和无线接口信号质量等。1588header记载了当前时间信息数据包携带的时间信息类型,消息长度域等信息;1588timestamp为发送侧发送时间信息数据包时,发送侧的本地绝对时间;链路时延用于表征当前发送侧与时间同步装置之间的链路传输时间,可以由发送侧测量得到;无线接口信号质量为当前发送侧的无线接口信号质量,可以由发送侧测量得到。当然,时间信息还可以包括其他信息,可以根据实际需要灵活设置。
发送侧通过无线接口周期性的向接收模块10发送时间信息数据包,发送周期可以根据应用场景、时间同步的需求等因素根据实际情况进行灵活设置。
接收模块10接收发送侧发送的时间信息数据包。
信息模块20,用于校验所述时间信息数据包,并根据所述时间信息数据包获取时间信息。
在收到发送侧发送的时间信息数据包后,信息模块20校验得到的时间信息数据包,并根据时间信息数据包得到时间信息。
具体的,作为一种实施方式,首先,信息模块20根据GNSS TOD帧或1588帧获取校验信息进行校验,判断收到的时间信息数据包是否正确、完整。
若收到的时间信息数据包正确且完整,则信息模块20解析时间信息数据包得到时间信息。若当前的时间信息数据包为GNSS TOD帧,则得到的时间信息包括时间信息包括发送侧的绝对时间、时间精度级别、链路时延、无线接口信号质量等信息;若当前的时间信息数据包为1588帧,则得到的时间信息包括时间信息包括时间戳、链路时延、无线接口信号质量等信息。
若当前收到的时间信息数据包不正确或不完整,则作为一种实施方式,信息模块20丢弃当前时间信息数据包。
由此,信息模块20得到时间信息。
同步模块30,用于根据所述获取的时间信息,发起时间同步。
在得到时间信息后,同步模块30根据得到的时间信息,发起时间同步。
具体的,作为一张实施方式,若当前时间信息数据包为GNSS TOD帧,则同步模块30根据时间信息中的绝对时间、时间精度级别、链路时延进行本地的绝对时间同步。
然后,同步模块30根据时间信息数据包恢复秒脉冲信号,并将恢复得到的秒脉冲信号作为参考秒脉冲。然后,同步模块30根据得到的参考秒脉冲调整时间同步装置本地时钟晶体的频率,以使本地秒脉冲信号与参考秒脉冲信号同步。
若当前时间信息数据包为1588帧,则同步模块30根据时间信息中的1588timestamp、链路时延进行本地的绝对时间同步。
然后,同步模块30根据时间信息数据包恢复秒脉冲信号,并将恢复得到的秒脉冲信号作为参考秒脉冲。然后,同步模块30根据得到的参考秒脉冲调整本地时钟晶体的频率,以使本地秒脉冲信号与参考秒脉冲信号同步。
由此,同步模块30实现了本地绝对时间和秒脉冲的同步。
作为另一种实施方式,同步模块30可以根据时间信息数据包中的无线信号接口质量判断是否发起本地时间同步。
若当前的无线信号接口质量差或不可用,则同步模块30丢弃本次时间信息数据包,暂不进行时间同步,待无线信号接口质量较好或可用时再发起时间同步。
若当前的无线信号接口质量好或可用,则同步模块30根据得到的时间信息,发起时间同步。
在本实施例中,接收模块10接收接发送侧发送的时间信息数据包;然后,信息模块20校验得到的时间信息数据包,并根据时间信息数据包获取时间信息;然后,根据获取的时间信息,同步模块30发起时间同步。本实施例通过发送侧获取时间,并将时间信息封装为时间信息数据包,使得接收侧可以根据时间信息数据包中的时间信息进行时间同步,避免了使用IEEE 1588组网进行时间同步时,时时间信息数据包经过多次交换、转发降低时间精度。同时,由于发送侧通过无线接口向接收侧发送时间信息数据包,无需外加天线,降低了基站组网的建设成本和维护成本。本实施实现了在保障基站设备时间同步高精度的同时,降低了工程成本和维护成本,且避免了组网环境受限的问题。
进一步的,参照图10,本发明时间同步装置第二实施例提供一种时间同步装置,基于上述图10所示的本发明时间同步装置第一实施例,所述发送侧分片发送所述时间信息数据包,所述接收模块10还用于,
接收所述发送侧发送的时间信息数据包分片,并重装为时间信息数据包。
在本发明实施例中,发送侧可以将封装得到的时间信息数据包直接承接在无线接口的无线帧中发送给时间同步装置,也可以将时间信息数据包分片并承接在无线接口的无线帧中发送给时间同步装置,可根据实际需要灵活设置。
当发送侧将时间信息数据包分片发送给接收侧时,接收模块10接收发送侧发送的时间信息数据包分片,并重装为时间信息数据包。
具体的,作为一种实施方式,以发送侧当前封装的时间信息数据包为GNSS TOD帧进行举例说明。
参照图17,GNSS TOD帧包括帧头、消息头、消息长度域、消息净荷和帧校验序列域。
其中,帧头可以由2个固定字节(byte)的SYNC CHAR(同步字符)组成,用于通知时间同步装置当前消息为时间同步消息,也即发送侧发送的时间信息数据包。例如,固定数值可以是0x43,0x43代表ASCII(AmericanStandard Code for Information Interchange,美国标准信息交换代码)码中的“C”字符;固定数值也可以是0x4D,0x4D代表ASCII码中的“M”字符。
消息头可以由4个字节组成,为消息类型和ID编号,消息分类用于表征当前GNSS TOD帧携带的时间信息类型,ID编号用于表征当前消息在消息周期中的编号。例如,使用固定数值0x8001表示当前的消息为GNSS TOD消息;使用无符号数0~65535表示当前时间信息数据包在时间同步周期中的编号。需要说明的是,时间同步周期为发送侧与时间同步装置进行时间同步的周期,可以根据实际需要灵活是指;发送侧将发送的时间信息数据包根据发送的时间顺序依次标号,以ID编号表征当前时间信息数据包的周期编号。
消息长度域,可以由4个字节组成,包含了消息净荷的长度。
帧校验序列域,可以为1个字节、2个字节或者4个字节等组成。1字节时,帧校验序列的多项式为G(x)=x8+x5+x4+1;2字节时,检验序列可以使用CRC(Cyclic Redundancy Check,循环冗余校验码)16来计算;4字节时,检验序列可以使用CRC32来计算。本实施例以帧校验序列域为2个字节,使用CRC16进行举例说明。
消息净荷,包括了时间信息的内容,如上述表1所示,时间信息包括绝对时间、时间精度级别、链路时延和无线接口信号质量等。
具体的,绝对时间包括周内秒、周数和LeapS(偏移量)。周内秒表征了GNSS时间周内秒,字节偏移量为0,数据类型为4byte(字节)的unsigned char(无符号字符),单位为s(秒);周数表征了GNSS时间周数,字节偏移量为4,数据类型为2byte的unsigned char,单位为week(周);LeapS表征了GNSS时间与UTC(Coordinated Universal Time,协调世界时)时的偏移量,字节偏移量为6,数据类型为1byte的signed char(有符号字符),单位为s。
时间精度级别包括秒脉冲状态、时钟源、TAcc(抖动量级)、时钟源工作状态和监控告警。
秒脉冲状态为当前秒脉冲的状态,字节偏移量为7,数据类型为1byte的unsigned char。例如,秒脉冲状态为0x00时,表征秒脉冲正常;秒脉冲状态为0x01时,表征时间同步设备原子钟为保持状态;秒脉冲状态为0x02时,表征秒脉冲不可用;秒脉冲状态为0x03时,表征时间同步设备高晶振为保持状态;秒脉冲状态为0x04时,表征传输承载设备保持;0x05及后续数值0xff为预留数值(reserved),可以添加其他秒脉冲状态。
时钟源为当前秒脉冲的时钟源,字节偏移量为8,数据类型为1byte的unsigned char。例如,时钟源为0x00时,表征时钟源为北斗星导航***;时钟源为0x01时,表征时钟源为GPS(Global Positioning System,全球定位***);时钟源为0x02时,表征时钟源为GLONASS(俄语中全球卫星导航***的缩写);时钟源为0x03时,表征时钟源为伽利略卫星导航***;时钟源为0x04时,表征时钟源为IEEE 1588;时钟源为0x05时,表征时钟源为NTP(Network Time Protocol,网络时间协议);0x06及后续数值0xff为预留数值(reserved),可以添加其他时钟源。
TAcc表征了秒脉冲的抖动量级,字节偏移量为9,数据类型为1byte的unsigned char。秒脉冲的抖动量范围为0至255个级别,抖动量每个级别15ns(纳秒),例如,TAcc为0时,表征秒脉冲的抖动量为0ns;TAcc为2时,表征秒脉冲的抖动量为30ns;以此类推,当TAcc为255时,当前秒脉冲抖动量过大,无意义。
时钟源工作状态表征了当前时钟源的工作状态,字节偏移量为10,数据类型为2byte的unsigned char。时钟源工作状态定义了GNSS的工作类型(GNSS Fix Type),表征工作质量的范围(range)为0至3。例如,时钟源工作状态为0x00时,表征当前no fix(无固定状态);时钟源工作状态为0x01时,表征当前dead reckoning only(只有航位推测);时钟源工作状态为0x02时,表征当前工作状态为2D平面;时钟源工作状态为0x03时,表征当前工作状态为3D立体;时钟源工作状态为0x04时,表征当前工作状态为GNSS+dead reckoning(GNSS和航位推测);时钟源工作状态为0x05时,表征当前Time only fix(仅定位时间);0x06及后续数值0xff为预留数值(reserved),可以添加其他时钟源工作状态。
监控警告表征了当前时钟源的状态告警,字节偏移量为12,数据类型为2byte的unsigned char。例如,监控警告为Bit0时,表征当前时钟源antenna open(天线开路);监控警告为Bit1时,表征当前时钟源antenna shorted(天线短路);监控警告为Bit2时,表征当前时钟源not tracking satellites(未监测到卫星);监控警告为Bit3时,表征当前时钟源survey in progress(正在进行调查);监控警告为Bit4时,表征当前时钟源no stored position(没有存储位置);监控警告为Bit5时,表征当前时钟源leap second pending(二次挂起);监控警告为Bit6时,表征当前时钟源in test mode(在测试模式);监控警告为Bit7时,表征当前时钟源position is questionable(位置存在疑问);监控警告为Bit8时,表征当前时钟源almanac not complete(年历不完整);监控警告为Bit9时,表征当前时钟源pps was generated(已生成秒脉冲);Bit10至Bit15为预留数值(reserved),可以添加其他监控警告。
链路时延为当前发送侧与时间同步装置之间的链路时延,由发起侧测量得到,字节偏移量为14,数据类型为2byte的unsigned char。链路时延以260.42ns(1chip,即1个无线基本帧时间)为一个时延级别,例如,链路时延为0x0时,表征当前链路无时延;链路时延为0x1时,表征当前链路时延为260.42ns(1chip,即1个无线基本帧时间);链路时延为0x2时,表征当前链路时延为520.84ns,以此类推;以链路时延为0x9600时,表征当前链路时延为10ms。0x9601及后续数值0xffff为预留数值(reserved),可以添加其他链路时延。
无线接口信号质量表征了当前发送侧的无线接口信号质量,字节偏移量为16,数据类型为1byte的unsigned char。例如,无线接口信号质量为0x0时,表征当前无线接口质量高;无线接口信号质量为0x1时,表征当前无线接口质量中;无线接口信号质量为0x2时,表征当前无线接口质量低;无线接口信号质量为0x3时,表征当前无线接口质量不可量。0x4及后续数值0xff为预留数值(reserved),可以添加其他无线接口信号质量。
另外,消息净荷预留3byte的数据,作为预留数值(reserved),用于添加其他信息。可得,消息净荷为20字节,也即20byte。
由此,发送侧封装的GNSS TOD帧为32字节,也即32byte。
然后,发送侧将GNSS TOD帧共计32byte的数据分为16个子帧,每个子帧2byte。发送侧通过无线接口向时间同步装置发送数据,将上述16个2byte的子帧分16次承载在无线接口的无线帧中,发送出去。其中消息净荷里的发送的绝对时间与发送侧的本地发送时刻保持一致。
接收模块10收到发送侧发送的时间信息数据包分片,也即各个2byte的子帧后,将得到的子帧进行重装,得到时间信息数据包GNSS TOD帧。
作为另一种实施方式,以发送侧当前封装的时间信息数据包为1588帧进行举例说明。在本实施例中,1588帧携带的时间信息使用sync报文、followup报文或announce报文。当然,1588帧也可以使用其他类型的报文。
1588帧包括帧头、消息头、消息长度域、消息净荷和帧校验序列域。
其中,帧头可以由2个固定字节(byte)的SYNC CHAR(同步字符)组成,用于通知时间同步装置当前消息为时间同步消息,也即发送侧发送的时间信息数据包。例如,固定数值可以是0x43,0x43代表ASCII(AmericanStandard Code for Information Interchange,美国标准信息交换代码)码中的“C”字符;固定数值也可以是0x4D,0x4D代表ASCII码中的“M”字符。
消息头可以由4个字节组成,为消息类型和ID编号,消息分类用于表征当前1588帧携带的时间信息类型,ID编号用于表征当前消息在消息周期中的编号。例如,使用固定数值0x8002表示当前的消息为sync报文;使用固定数值0x8003表示当前的消息为followup报文;使用固定数值0x8004表示当前的消息为announce报文;使用无符号数0~65535表示当前时间信息数据包在时间同步周期中的编号。需要说明的是,时间同步周期为发送侧与时间同步装置进行时间同步的周期,可以根据实际需要灵活是指;发送侧将发送的时间信息数据包根据发送的时间顺序依次标号,以ID编号表征当前时间信息数据包的周期编号。
消息长度域,可以由4个字节组成,包含了消息净荷的长度。
帧校验序列域,可以为1个字节、2个字节或者4个字节等组成。1字节时,帧校验序列的多项式为G(x)=x8+x5+x4+1;2字节时,检验序列可以使用CRC(Cyclic Redundancy Check,循环冗余校验码)16来计算;4字节时,检验序列可以使用CRC32来计算。本实施例以帧校验序列域为2个字节,使用CRC16进行举例说明。
消息净荷,包括了时间信息的内容,当1588帧所携带的时间信息为sync报文或followup报文时,时间信息包括1588header(消息头)、1588timestamp(时间戳)、链路时延和无线接口信号质量等。当1588帧所携带的时间信息为announce报文时,时间信息包括1588header、1588timestamp、1588时间精度、链路时延和无线接口信号质量等。
1588header包括携带有当前消息的类型等信息,共计34byte。具体的,如上述表2所示,1588header携带的Message Type(消息类型),为TransportSpecific(传输专用),字节偏移量为0,大小为1byte;Version PTP(PrecisionTime Protocol Version,精确时钟同步协议版本),为reserved(预留的),字节偏移量为1,大小为1byte;Message length(消息长度)记录了当前消息净荷的长度,字节偏移量为2,大小为2byte;Domain number(长度域)字节偏移量为4,大小为1byte;reserved(预留)字节偏移量为5,大小为1byte;Flagfield(标记字段)字节偏移量为6,大小为2byte;correction field(校正字段)字节偏移量为8,大小为8byte;reserved(预留)字节偏移量为16,大小为4byte;Source port Identity(源端口身份)字节偏移量为20,大小为10byte;sequence ID(序列ID)字节偏移量为30,大小为2byte;Control field(控制字符)字节偏移量为32,大小为1byte;Log message Interval(日志消息间隔)字节偏移量为33,大小为1byte。
1588timestamp为与UTC的时间差,包括6byte的秒位信息以及4byte的纳秒位信息,共计10byte。
1588时间精度仅在1588帧所携带的时间信息为announce报文时存在,共计20byte。1588时间精度包括时钟优先级、时钟等级、时钟精度、时钟抖动、时间源和传递跳数等信息。例如,时钟优先级表征了当前时钟的优先级别;时钟等级的取值范围0~255,数值越小,时钟的等级越高;时钟精度使用数值表征了时间精度;时钟抖动表征了当前时钟的抖动量;传递跳数表征了时间源到本节点的传递跳数,每传递一条加1;时间源表征了当前时间的来源,如卫星、内部时钟等。
链路时延表征了发送侧和时间同步装置之间链路的时延,在本实施例中,发送侧和时间同步装置不需要进行交互计算链路时延,链路时延可由发送侧测量得到。链路时延以260.42ns(1chip,即1个无线基本帧时间)为一个时延级别,例如,链路时延为0x0时,表征当前链路无时延;链路时延为0x1时,表征当前链路时延为260.42ns(1chip,即1个无线基本帧时间);链路时延为0x2时,表征当前链路时延为520.84ns,以此类推;以链路时延为0x9600时,表征当前链路时延为10ms。0x9601及后续数值0xffff为预留数值(reserved),可以添加其他链路时延。
无线接口信号质量表征了当前发送侧的无线接口信号质量。例如,无线接口信号质量为0x0时,表征当前无线接口质量高;无线接口信号质量为0x1时,表征当前无线接口质量中;无线接口信号质量为0x2时,表征当前无线接口质量低;无线接口信号质量为0x3时,表征当前无线接口质量不可量。0x4及后续数值0xff为预留数值(reserved),可以添加其他无线接口信号质量。
需要说明的是,链路时延和无线接口信号质量共计2byte。
另外,消息净荷预留2byte的数据,作为预留数值(reserved),用于添加其他信息。
可得,当1588帧携带的时间信息为sync报文或followup报文时,消息净荷为48byte;当1588帧携带的时间信息为announce报文时,消息净荷为68byte。
由此,可以得到1588帧共计60byte(时间信息为sync报文或followup报文时)或者80byte(时间信息为announce报文时)。然后,发送侧将1588帧对应的分为30或者40个子帧,每个子帧2byte。发送侧通过无线接口发送数据,将上述30个或者40个2byte的子帧分30次或者40次承载在无线接口的无线帧中,发送出去。其中消息净荷里的发送的绝对时间与发送侧本地的发送时刻保持一致。
接收模块10收到发送侧发送的时间信息数据包分片,也即各个2byte的子帧后,将得到的子帧进行重装,得到时间信息数据包1588帧。
在本实施例中,发送侧分片发送所述时间信息数据包以适应网路链路的传输能力,提高传输效率,接收模块10接收发送侧发送的时间信息数据包分片,并重装为时间信息数据包,从而进行时间同步。本实施例实现了时间信息数据包的多种方式发送,提高了时间信息数据包的传输效率,从而有效保证了接收侧时间同步的精度。
进一步的,参照图11,本发明时间同步装置第三实施例提供一种时间同步装置,基于上述图10所示的本发明时间同步装置第一实施例或第二实施例(本实施例以图10所示的本发明时间同步装置第一实施例为例),所述信息模块20包括:
校验单元21,用于校验所述时间信息数据包是否正确且完整。
在获取发送侧发送的时间信息数据包后,校验单元21校验时间信息数据包的正确性和完整性。
具体的,作为一种实施方式,时间信息数据包包括帧头、消息头、消息长度域、消息净荷和帧校验序列域。
首先,校验单元21根据帧头校验时间信息数据包是否正确,是否为时间同步帧,例如GNSS TOD帧或1588帧。
校验单元21根据消息头校验时间信息数据包携带的时间信息类型是否正确,是否为GNSS TOD帧对应的GNSS TOD消息,或者,是否为1588帧对应的sync报文、followup报文或announce报文。
校验单元21根据消息长度域校验时间信息数据包携带的消息净荷是否完整。
校验单元21根据消息净荷和帧校验序列域校验时间信息数据包是否完整。若不完整,则丢弃当前时间信息数据包。若完整,则确认当前时间信息数据包正确且完整。
若校验单元21根据帧头校验正确,且根据消息头校验正确,且根据消息长度域校验完整,且根据消息净荷和帧校验序列域校验完整,则确认当前时间信息数据包正确且完整。
由此,校验单元21得到当前时间信息数据包的校验结果。
信息单元22,用于若所述时间数据包正确且完整,则根据所述时间信息数据包获取消息净荷,得到时间信息,所述消息净荷包括所述时间信息。
若当前时间信息数据包正确且完整,则信息单元22根据时间信息数据包得到消息净荷,消息净荷包括时间信息,从而,信息单元22得到时间信息。
具体的,作为一种实施方式,以发送侧当前封装的时间信息数据包为GNSS TOD帧进行举例说明。
信息单元22解析当前得到的时间信息数据包,得到消息净荷。消息净荷为发送侧在GNSS TOD帧中封装的时间信息,包括绝对时间、时间精度级别、链路时延和无线接口信号质量等。当然,发送侧封装的时间信息还可以包括其他信息,可以根据实际需要灵活设置。
由此,信息单元22得到时间信息,包括绝对时间、时间精度级别、链路时延和无线接口信号质量等。
作为另一种实施方式,以发送侧当前封装的时间信息数据包为1588帧进行举例说明。
在本实施例中,1588帧携带的时间信息使用sync报文、followup报文或announce报文。当然,1588帧也可以使用其他类型的报文。
信息单元22解析当前得到的时间信息数据包,得到消息净荷。消息净荷为发送侧在1588帧中封装的时间信息,若发送侧封装的时间信息为sync报文或followup报文时,消息净荷包括1588header、1588timestamp、链路时延和无线接口信号质量等;1588帧所携带的时间信息为announce报文时,消息净荷包括1588header、1588timestamp、1588时间精度、链路时延和无线接口信号质量等。
由此,信息单元22得到时间信息。需要说明的是,当发送侧封装的时间信息为sync报文或followup报文时,时间信息包括1588header、1588timestamp、链路时延和无线接口信号质量等;1588帧所携带的时间信息为announce报文时,时间信息包括1588header、1588timestamp、1588时间精度、链路时延和无线接口信号质量等。
在本实施例中,校验单元21校验当前得到的时间信息数据包是否正确且完整;若当前时间数据包正确且完整,则信息单元22根据时间信息数据包获取消息净荷,得到时间信息,消息净荷包括时间信息。在本实施例中,发送侧将时间信息封装在时间信息数据包中,接收侧在获取时间信息数据包后,首先校验得到的时间信息数据包是否正确且完整,仅当时间信息数据包正确且完整才获取时间信息,避免不正确或不完整的数据包降低影响接收侧的时间同步,降低时间同步精度。本实施例实现了对时间信息数据包正确性和完整性的校验,提高了接收侧时间同步的正确性和精确性。
进一步的,参照图11,本发明实施例时间同步装置第四实施例提供一种时间同步装置,基于上述图11所示的本发明时间同步装置第三实施例,所述时间信息数据包包括帧头、消息头、消息长度域、消息净荷和帧校验序列域,所述校验单元21还用于,
根据所述帧头校验所述时间信息数据包是否正确,根据所述消息头校验所述时间信息数据包是否正确,根据所述消息长度域和所述消息净荷校验所述时间信息数据包是否完整,根据所述消息净荷和所述帧校验序列域校验所述时间信息数据包是否完整;若所述帧头校验正确,且所述消息头校验正确,且所述消息长度域和所述消息净荷校验完整,且所述消息净荷和所述帧校验序列域校验完整,则判定所述时间信息数据包正确且完整。
在本实施例中,发送侧发送的时间信息数据包均包括帧头、消息头、消息长度域、消息净荷和帧校验序列域。发送侧根据当前获取时间的时钟源工作状态,灵活选择GNSS或IEEE 1588获取时间,并封装得到GNSS TOD帧或1588帧。
在获取发送侧发送的时间信息数据包后,校验单元21首先校验收到的时间信息数据包是否正确且完整。
具体的,作为一种实施方式,以发送侧当前封装的时间信息数据包为GNSS TOD帧进行举例说明。
校验单元21根据帧头校验时间信息数据包是否正确。校验单元21判断帧头的关键字是否为发送侧预先配置的0x43或0x4d,若帧头关键字是0x43或0x4d,则判定本次接收的时间信息数据包正确;否则判定本次接收的时间信息数据包不正确。
校验单元21根据消息头校验时间信息数据包是否正确。校验单元21获取消息头携带的消息类型关键字,由于校验单元21在收到时间信息数据包前并不知道发送侧发送的时间信息类型,因此,校验单元21判断消息类型关键字是否为0x8001、0x8002、0x8003或0x8004,也即判断当前时间信息数据包携带的时间信息是否为GNSS TOD消息、sync报文、followup报文或announce报文中的一种。若消息头的关键字是0x8001、0x8002、0x8003或0x8003,则判定本次接收的时间信息数据包正确;否则判定本次接收的时间信息数据包不正确。例如,消息头的关键字是0x8001,则判定本次接收的时间信息数据包正确,并根据0x8001获取当前时间信息数据包携带的时间信息为GNSSTOD消息。
校验单元21根据消息长度域和消息净荷校验时间信息数据包是否完整。校验单元21根据时间长度域获取当前时间信息数据包携带的消息净荷长度,例如消息长度域为0x14时,表征当前消息净荷长度为20byte。然后,若发送侧整体发送本次时间信息数据包,则判断当前消息净荷的长度是否为20byte,若消息净荷的长度为20byte,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。若发送侧分片发送本次时间信息数据包,则分10次、每次2byte接收发送侧发送的消息净荷,并在重装得到时间信息数据包后判断当前消息净荷的长度是否为20byte,若消息净荷的长度为20byte,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。
校验单元21根据消息净荷和帧校验序列域校验时间信息数据包是否完整。校验单元21将收到的20byte的消息净荷和帧校验序列进行1次CRC16校验计算,若计算得到固定序列x15~x0:0001110100001111,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。
由此,校验单元21得到校验结果。
作为另一种实施方式,以发送侧当前封装的时间信息数据包为1588帧进行举例说明。
校验单元21根据帧头校验时间信息数据包是否正确。校验单元21判断帧头的关键字是否为发送侧预先配置的0x43或0x4d,若帧头关键字是0x43或0x4d,则判定本次接收的时间信息数据包正确;否则判定本次接收的时间信息数据包不正确。
校验单元21根据消息头校验时间信息数据包是否正确。校验单元21获取消息头携带的消息类型关键字,由于校验单元21在收到时间信息数据包前并不知道发送侧发送的时间信息类型,因此,校验单元21判断消息类型关键字是否为0x8001、0x8002、0x8003或0x8004,也即判断当前时间信息数据包携带的时间信息是否为GNSS TOD消息、sync报文、followup报文或announce报文中的一种。若消息头的关键字是0x8001、0x8002、0x8003或0x8003,则判定本次接收的时间信息数据包正确;否则判定本次接收的时间信息数据包不正确。例如,消息头的关键字是0x8002,则判定本次接收的时间信息数据包正确,并根据0x8002获取当前时间信息数据包携带的时间信息为sync报文。
校验单元21根据消息长度域和消息净荷校验时间信息数据包是否完整。校验单元21根据时间长度域获取当前时间信息数据包携带的消息净荷长度,例如,消息长度域为0x30时,表征当前消息净荷长度为48byte。然后,若发送侧整体发送本次时间信息数据包,则判断当前消息净荷的长度是否为48byte,若消息净荷的长度为48byte,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。若发送侧分片发送本次时间信息数据包,则分24次、每次2byte接收发送侧发送的消息净荷,并在重装得到时间信息数据包后判断当前消息净荷的长度是否为48byte,若消息净荷的长度为48byte,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。消息长度域为0x44时,表征当前消息净荷长度为60byte。然后,若发送侧整体发送本次时间信息数据包,则判断当前消息净荷的长度是否为60byte,若消息净荷的长度为60byte,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。若发送侧分片发送本次时间信息数据包,则分30次、每次2byte接收发送侧发送的消息净荷,并在重装得到时间信息数据包后判断当前消息净荷的长度是否为60byte,若消息净荷的长度为60byte,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。
校验单元21根据消息净荷和帧校验序列域校验时间信息数据包是否完整。校验单元21将收到的48byte或60byte的消息净荷和帧校验序列进行1次CRC16校验计算,若计算得到固定序列x15~x0:0001110100001111,则判定本次接收的时间信息数据包完整;否则判定本次接收的时间信息数据包不完整。
由此,校验单元21得到校验结果。
需要说明的是,在本实施例中,若发送侧分片发送时间信息数据包,则校验单元21可以在接收模块10收到时间信息数据包分片后,根据收到的时间信息数据包分片分别进行校验,校验方法同上所述,并得到校验结果。
若校验单元21根据帧头校验本次时间信息数据包正确,并且根据消息头校验本次时间信息数据包正确,并且根据消息净荷和帧校验序列域校验本次时间信息数据包完整,并且根据消息净荷和帧校验序列域校验本次时间信息数据包完整,则校验单元21判定本次收到的时间信息数据包正确且完整;否则,校验单元21判定本次收到的时间信息数据包不正确或不完整。
由此,校验单元21得到对本次收到的时间信息数据包的校验结果。
在本实施例中,校验单元21根据帧头校验时间信息数据包是否正确,根据消息头校验时间信息数据包是否正确,根据消息长度域和消息净荷校验时间信息数据包是否完整,根据消息净荷和帧校验序列域校验时间信息数据包是否完整;若帧头校验正确,且消息头校验正确,且消息长度域和消息净荷校验完整,且消息净荷和帧校验序列域校验完整,则判定本次收到的时间信息数据包正确且完整。本实施例通过多种方式对时间信息数据包进行校验,实现了对时间信息数据包正确性和完整性的多重校验,接收侧仅根据正确且完整的时间信息数据包进行时间同步,提高了接收侧时间同步的正确性和精确性。
进一步的,参照图12,本发明时间同步装置第五实施例提供一种时间同步装置,基于上述图11所示的本发明时间同步装置第四实施例,所述时间同步装置还包括:
丢弃模块40,用于若所述时间信息数据包不正确或不完整,则丢弃所述时间信息数据包。
在检验单元21根据帧头校验时间信息数据包是否正确,根据消息头校验时间信息数据包是否正确,根据消息长度域和消息净荷校验时间信息数据包是否完整,根据消息净荷和帧校验序列域校验时间信息数据包是否完整,并得到校验结果后,若本次收到的时间信息数据包不正确或不完整,则丢弃模块40丢弃本次收到的时间信息数据包,不用于时间同步装置的时间同步。
然后,接收模块10接收发送侧发送的下一个时间信息数据包,校验单元21进行校验。
在本实施例中,若本次收到的时间信息数据包不正确或不完整,则丢弃模块40丢弃当前时间信息数据包。本实施例实现了对时间信息数据包质量的把控,当时间信息数据包的质量不能满足预设的要求,则接收侧丢弃该时间信息数据包。本实施例通过对时间信息数据包的质量把控,提高的接收侧的时间同步正确性和精确度。
进一步的,参照图13,本发明时间同步装置第六实施例提出一种时间同步装置,基于上述图12所示的本发明时间同步装置第五实施例,所述发送侧分片发送所述时间信息数据包,所述时间信息数据包的消息头携带有本次时间同步的周期编号,所述校验单元21还用于,
根据所述周期编号校验所述发送侧发送的时间信息数据包分片是否正确。
在本实施例中,发送侧周期性的向时间同步装置发送时间信息数据包,时间同步装置根据收到的时间信息数据包进行时间同步。需要说明的是,发送侧发送时间信息数据包时携带的周期编号,与时间同步装置进行时间同步的周期编号保持同步。
发送侧发送的时间信息数据包中,消息头携带的ID编号,即为本次时间同步的周期编号。例如,发送侧使用无符号数0~65535作为ID编号,表示当前时间信息数据包在时间同步周期中的编号,也即本次时间同步的周期编号。
具体的,作为一种实施方式,发送侧根据时间信息数据包的发送时间顺序,依次对时间信息数据包的消息头进行ID编号。当发送侧分片发送时间信息数据包时,时间信息数据包的各分片中均携带有相同的、本次时间同步的周期编号,周期编号对于各分片字节量大小的影响可忽略不计。
接收模块10收到时间信息数据包分片后,校验单元21获取各时间信息数据包分片携带的周期编号。
然后,校验单元21根据当前时间同步周期,判断收到的时间信息数据包分片携带的周期编号是否为本次时间同步周期的周期编号。若收到的时间信息数据包分片携带的周期编号是本次时间同步周期的周期编号,则判定此时间信息数据包分片正确;否则,判定当前时间信息数据包不正确。
同时,校验单元21根据收到的时间信息数据包分片携带的周期编号是否相同,判断收到的时间信息数据包分片是否为同一个时间信息数据包的分片。
若在本次时间同步周期内,收到的时间信息数据包分片携带相同的周期编号,且时间信息数据包分片的周期编号与本次时间同步周期的周期编号相同,则校验单元21判定发送侧发送的时间信息数据包分片正确。否则,校验单元21判定发送侧发送的时间信息数据包分片不正确。
若当前发送侧发送的时间信息数据包分片正确,则信息单元22根据时间信息数据包获取消息净荷,得到时间信息。
若当前发送侧发送的时间信息数据包分片不正确,则丢弃模块40丢弃当前收到的时间信息数据包。
作为另一种实施方式,发送侧分片发送时间信息数据包时,校验单元21可以在接收模块10接收时间信息数据包分片时进行校验;若时间信息数据包分片正确,则接收模块10重装时间信息数据包分片得到时间信息数据包;若时间信息数据包分片不正确,则丢弃模块40丢弃时间信息数据包分片,接收模块10不根据本次收到的时间信息数据包分片重装时间信息数据包。
所述时间同步装置还包括:
质检模块50,用于根据所述周期编号,获取在预设的质量检测周期内,所述时间信息数据包的丢包率;若信息数据包的丢包率大于预设的阈值,则不发起时间同步。
当发送侧整体发送时间信息数据包或分片发送时间信息数据包时,质检模块50均可以根据收到的时间信息数据包周期编号,可以得到预设的质量检测周期内,时间信息数据包的丢包率。
其中,预设的质量检测周期为接收侧预先配置的时间同步信号质量检测周期,可以根据接收侧的应用场景或对于信号质量的实际需求灵活设置。
由于发送侧对时间信息数据包消息头携带的ID编号为连续且不同的编号,因此,质检模块50根据收到的时间信息数据包周期编号,可以识别不同的时间信息数据包,从而得到收到的时间信息数据包数量。当然,还可以通过周期编号获取发送侧发送时间信息数据包的连续性。
本实施例中,取正确且完整的时间信息数据包为可用数据包,取不正确或不完整的时间信息数据包为不可用数据包。
具体的,作为一种实施方式,质检模块50根据周期编号,分别记录可用数据包和丢弃的不可用数据包,得到数据包记录。
质检模块50可以根据数据包记录,获取预设的质量检测周期内,接收模块10收到的可用数据包和不可用数据包的总数,也即接收模块10收到的数据包总数。
质检模块50可以根据数据包记录,获取预设的质量检测周期内,接收模块10收到的不可用数据包数量。
然后,质检模块50计算不可用数据包数量占收到的数据包总数的比例,得到接收侧的丢包率,也即时间信息数据包的丢包率。
由此,质检模块50得到预设的质量检测周期内,时间信息数据包的丢包率。
在获取接收侧的丢包率后,若在预设的质量检测周期内,丢包率大于预设的阈值,也即时间同步装置对于时间信息数据包丢包率超过预设的阈值,则当前可能由于发送侧的故障或链路等原因导致时间信息数据包的质量差。
作为一种实施方式,质检模块50控制同步模块30不根据此段质量检测周期内的时间信息数据包发起时间同步。
然后,质检模块50继续根据发送侧发送的时间信息数据包进行校验。
当在任一质量检测周期内,时间信息数据包的丢包率小于或等于预设的阈值时,同步模块30再根据此周期内的时间信息数据包发起时间同步。
需要说明的是,预设的阈值为预先配置的比例值,可以根据不同的应用场景或接收侧对于时间信息数据包的质量要求进行灵活设置。
在本实施例中,发送侧分片发送时间信息数据包,时间信息数据包的消息头携带有本次时间同步的周期编号;校验单元21根据周期编号校验发送侧发送的时间信息数据包分片是否正确;若周期编号校验正确,则本次收到的时间信息数据包正确且完整,信息单元22获取时间信息进行时间同步;若周期编号校验不正确,则丢弃模块40接收侧丢弃当前时间信息数据包;然后,质检模块50根据周期编号,获取在预设的质量检测周期内,时间信息数据包的丢包率;若丢包率大于预设的阈值,则质检模块50控制同步模块30暂不发起时间同步。本实施例实现了通过周期编号判断时间信息数据包分片的正确性,提高了对时间信息数据包质量把控的严格程度,当时间信息数据包的质量不能满足预设的要求,则接收侧暂不发起时间同步,待时间信息数据包的质量满足预设的要求后再启动时间同步。本实施例通过对时间信息数据包的质量把控,提高的接收侧的时间同步正确性和精确度。
进一步的,参照图14,本发明时间同步装置第七实施例提供一种时间同步装置,基于上述图10至图13任一项所示的实施例(本实施例以图13为例),所述时间同步包括绝对时间同步及/或秒脉冲同步,所述同步模块30包括:
条件单元31,用于判断所述时间信息是否满足发起时间同步的预设条件。
在根据时间信息数据包得到时间信息后,条件单元31判断得到的时间信息是否满足发起时间同步的预设条件。
具体的,作为一种实施方式,发起时间同步的预设条件为条件单元31预先配置的、对于当前时间信息的要求,可以包括对于时钟源的抖动量级要求、对于时钟源工作状态的要求、对于时钟源状态告警的要求、对于链路延时的要求和对于无线接口信号质量的要求等。条件单元31可以根据自身应用场景或对于时间信息数据包的质量要求,灵活设置发起时间同步的条件,例如,发起时间同步的预设条件为无线接口信号质量好、链路延时不能超过530ns。
以当前条件单元31预先配置的发起时间同步的条件为:无线接口信号质量为高或中,进行举例说明。
若得到的时间信息中,无线接口信号质量为0x0,则条件单元31判定当前无线接口质量高,当前时间信息满足发起时间同步的预设条件,可以用于发起时间同步。
若得到的时间信息中,无线接口信号质量为0x3,则条件单元31判定当前无线接口不可用,当前时间信息不满足发起时间同步的预设条件,不可以用于发起时间同步。
由此,条件单元31得到判定结果。
同步单元32,用于若所述时间信息满足发起时间同步的预设条件,则发起绝对时间同步及/或秒脉冲同步。
在得到判定结果后,若当前时间信息满足发起时间同步的预设条件,则同步单元32发起时间同步,时间同步包括绝对时间同步及/或秒脉冲同步。
具体的,作为一种实施方式,以当前以发送侧当前封装的时间信息数据包为GNSS TOD帧进行举例说明。
信息单元22获取的时间信息包括绝对时间、时间精度级别、链路时延和无线接口信号质量。
同步单元32可以根据发送侧的绝对时间和链路时延,同步本地的绝对时间。
同步单元32可以根据一定时间范围内,多个时间信息数据包的绝对时间、链路时延恢复发送侧的秒脉冲信号。然后,将恢复得到的秒脉冲信号作为参考秒脉冲。然后,同步单元32根据得到的参考秒脉冲调整本地时钟晶体的频率,以使本地秒脉冲信号与参考秒脉冲信号同步。
由此同步单元32实现本地绝对时间的同步,及/或本地秒脉冲的同步。
作为另一种实施方式,以当前以发送侧当前封装的时间信息数据包为1588帧进行举例说明。
信息单元22获取的时间信息包括1588header、1588timestamp、链路时延和无线接口信号质量。当时间信息为announce报文时,时间信息另外还包括1588时间精度。
同步单元32可以根据发送侧的1588timestamp和链路时延,同步本地的绝对时间。
同步单元32可以根据一定时间范围内,多个时间信息数据包的1588timestamp、链路时延恢复发送侧的秒脉冲信号。然后,将恢复得到的秒脉冲信号作为参考秒脉冲。然后,同步单元32根据得到的参考秒脉冲调整本地时钟晶体的频率,以使本地秒脉冲信号与参考秒脉冲信号同步。
由此同步单元32实现本地绝对时间的同步,及/或本地秒脉冲的同步。
在本实施例中,条件单元31判断得到的时间信息是否满足发起时间同步的预设条件;若时间信息满足发起时间同步的预设条件,则同步单元32发起绝对时间同步及/或秒脉冲同步。本实施在时间信息满足发起时间同步的预设条件时,根据时间信息发起绝对时间同步及/或秒脉冲同步,实现了根据时间信息的精度等因素灵活把握是否要发起时间同步,有效提高了接收侧时间同步的精准性。
进一步的,参照图15,本发明时间同步装置第八实施例提供一种时间同步装置,基于上述图14所示的实施例,所述同步单元32包括:
绝对时间同步子单元321,用于若所述时间信息满足发起时间同步的预设条件,则根据所述时间信息发起绝对时间同步。
若得到的时间信息满足发起时间同步的预设条件,则绝对时间同步子单元321根据时间信息发起绝对时间同步。
具体的,作为一种实施方式,以当前以发送侧当前封装的时间信息数据包为GNSS TOD帧进行举例说明。
同步单元32根据时间信息中的绝对时间、链路时延和接收模块10接收时间信息数据包的本地时间,发起绝对时间同步。
例如,将发送侧的绝对时间T1加上链路时延T2,得到接收模块10接收时间信息数据包时的发送侧绝对时间T3。
若接收模块10接收时间信息数据包的本次时间为T4,则绝对时间同步子单元321根据T3与T4的时间差得到接收侧与发送侧的绝对时间差,并根据得到的绝对时间差调整本地的绝对时间,从而实现本地绝对时间的同步。
作为另一种实施方式,以当前以发送侧当前封装的时间信息数据包为1588帧进行举例说明。
接收侧根据时间信息中的1588timestamp、链路时延和接收模块10接收时间信息数据包的本地时间,发起绝对时间同步。
例如,将发送侧1588timestamp的时间T1加上链路时延T2,得到接收模块10接收时间信息数据包时的发送侧绝对时间T3。
若接收模块10接收时间信息数据包的本次时间为T4,则绝对时间同步子单元321根据T3与T4的时间差得到接收侧与发送侧的绝对时间差,并根据得到的绝对时间差调整本地的绝对时间,从而实现本地绝对时间的同步。
由此,绝对时间同步子单元321实现本地绝对时间的同步。
秒脉冲同步子单元322,用于根据所述发送侧发送的时间信息数据包,恢复发送侧的秒脉冲信号;根据所述发送侧的秒脉冲信号,调整本地的时钟频率,发起秒脉冲同步。
秒脉冲同步子单元322根据收到的时间信息数据包,可以恢复得到发送侧的秒脉冲信号。
具体的,作为一种实施方式,由于发送侧使用固定的频率发送时间信息数据包,例如,发送侧每隔10ms(毫秒)发送一次时间信息数据包,则发送侧每秒发送100个时间信息数据包。取当前发送侧发送的第一个时间信息数据包的绝对时间为0秒时刻,则发送侧发送第101个时间信息数据包的绝对时间为1秒时刻,可以将此第1个和第101个时间信息数据包的秒位时间作为发送侧的秒脉冲。
由此,秒脉冲同步子单元得到发送侧的秒脉冲信号。
当然,秒脉冲同步子单元322还可以通过其他方式恢复发送侧的秒脉冲信号,可根据实际需要灵活设置。
在获取发送侧的秒脉冲信号后,秒脉冲同步子单元322调整根据发送侧的秒脉冲信号,调整本地的时钟频率,进行秒脉冲同步。
具体的,作为一种实施方式,参照图20,秒脉冲同步子单元322使用锁相环(Phase Locked Loop,简称PLL)路进行本地秒脉冲信号同步。
在获取发送侧的秒脉冲信号后,秒脉冲同步子单元322控制鉴相器PD(phasedetector)根据发送侧的秒脉冲信号与本地的秒脉冲信号进行鉴相,并得到相位偏差值。然后,鉴相器将相位偏差值转化为电压的变化,输出模拟电压信号,并通过低通滤波器LPF(Low Pass Filter)虑除高频杂波。
然后,恒温晶体振荡器OCXO(Oven Controlled Crystal Oscillator)接收低通滤波器LPF的信号,并将得到的电压信号作为压控电压,控制本地时钟晶体的震荡,并输出本地时钟晶体的震荡频率。
然后,分频器将OXCO输出的频率反馈给鉴相器,用于判断当前本地时钟的秒脉冲信号是否与输入的参考秒脉冲信号同步。
若当前本地时钟的秒脉冲信号与输入的参考秒脉冲信号同步,则不再进行本地秒脉冲信号的调整,由PLL进行锁相,保持当前的本地时钟震荡频率,使本地时钟震荡频率与发送侧的时钟震荡频率保持一致。
若当前本地时钟的秒脉冲信号与输入的参考秒脉冲信号不同步,则鉴相器PD继续鉴相,调节本地时钟的震荡频率。
需要说明的是,本地时钟可以是铷钟,也可以是其他时钟,可以根据实际需要灵活设置。
由此,秒脉冲同步子单元322实现秒脉冲同步。
在本实施例中,若得到的时间信息满足发起时间同步的预设条件,则绝对时间同步子单元321根据时间信息发起绝对时间同步;秒脉冲同步子单元322根据发送侧发送的时间信息数据包,恢复发送侧的秒脉冲信号;然后,秒脉冲同步子单元322根据发送侧的秒脉冲信号,调整接收侧本地的时钟频率,进行秒脉冲同步。本实施例通过根据时间信息数据包携带的时间信息进行绝对时间同步,并根据收到的时间信息数据包恢复发送侧的秒脉冲信号,实现了本地秒脉冲的同步,提高了接收侧本地绝对时间和秒脉冲的同步精度。
进一步的,参照图15,本发明时间同步装置第九实施例提供一种时间同步装置,基于上述图15所示的本发明时间同步装置第八实施例,所述秒脉冲同步子单元322还用于,
根据所述发送侧的秒脉冲信号,获取与本地秒脉冲信号的相位偏差值;判断所述相位偏差值是否超过预设的偏差阈值;若所述相位偏差值超过预设的偏差阈值,则根据所述相位偏差值调整本地的时钟频率,获取调整后的秒脉冲信号;若所述相位偏差值未超过预设的偏差阈值,则判定完成本次秒脉冲同步。
在获取发送侧秒脉冲信号后,秒脉冲同步子单元322将发送侧的秒脉冲信号作为参考秒脉冲信号,获取与本地秒脉冲信号的相位偏差值。
具体的,作为一种实施方式,秒脉冲同步子单元322将参考秒脉冲信号与本地秒脉冲信号进行鉴相,并得到参考秒脉冲信号与本地秒脉冲信号的相位偏差值。
在得到相位偏差值后,秒脉冲同步子单元322判断相位偏差值是否满足预设的偏差阈值。
需要说明的时,预设的偏差阈值为秒脉冲同步子单元322根据应用场景或对于本地秒脉冲的精度要求预先配置的。例如,若秒脉冲同步子单元322对于本地秒脉冲的误差要求不严格,则可以设置数值较大的偏差阈值;若秒脉冲同步子单元322对于本地秒脉冲的误差要求严格,则可以设置数值较小的偏差阈值。
若相位偏差值大于预设的偏差阈值,则判定相位偏差值超过预设的偏差阈值;若相位偏差值小于或等于预设的偏差阈值,则判定相位偏差值未超过预设的偏差阈值。
由此,秒脉冲同步子单元322得到判定结果。
若相位偏差值超过预设的偏差阈值,则秒脉冲同步子单元322根据相位偏差值调整本地的时钟频率。
具体的,作为一种实施方式,接收侧将相位偏差值转化为电压信号的变化,并根据得到的电压信号控制本地时钟晶体的震荡。
然后,秒脉冲同步子单元322获取本地时钟晶体调整后的震荡频率,并根据调整后的震荡频率得到调整后的秒脉冲信号。
然后,秒脉冲同步子单元322将参考秒脉冲信号与调整后的本地秒脉冲信号进行鉴相,并得到参考秒脉冲信号与调整后的本地秒脉冲信号的相位偏差值。
然后,判断本次的相位偏差阈值是否超过预设的偏差阈值,若超过,则继续调整本地时钟的震荡频率。
若相位偏差值未超过预设的偏差阈值,则秒脉冲同步子单元322认为当前本地时钟秒脉冲信号与参考秒脉冲信号的误差符合当前的使用需求,判定完成本次秒脉冲同步。
由此,秒脉冲同步子单元322完成本地秒脉冲的同步。
在本实施例中,秒脉冲同步子单元322根据发送侧的秒脉冲信号,获取与本地秒脉冲信号的相位偏差值;判断相位偏差值是否超过预设的偏差阈值;若相位偏差值超过预设的偏差阈值,则根据相位偏差值调整本地的时钟频率,获取调整后的秒脉冲信号,并获取调整后的秒脉冲信号与发送侧秒脉冲信号的相位差值,根据相位差值进行下一步的操作;若相位偏差值未超过预设的偏差阈值,则秒脉冲同步子单元322判定完成本次秒脉冲同步。本实施例通过预先配置偏差阈值,仅当接收侧本地秒脉冲信号与发送侧秒脉冲信号的相位差值超过偏差阈值时,发起秒脉冲同步,直至接收侧本地秒脉冲信号与发送侧秒脉冲信号的相位偏差值小于或等于偏差阈值;当接收侧本地秒脉冲信号与发送侧秒脉冲信号的相位差值未超过偏差阈值时,判定完成本次接收侧的秒脉冲同步。本实施通过预设偏差阈值,实现了灵活把握接收侧本地秒脉冲信号与发送侧秒脉冲信号的误差,从而保障了接收侧本地秒脉冲同步的精度。
以上仅为本发明的可选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (18)
1.一种时间同步方法,其特征在于,所述时间同步方法包括以下步骤:
接收侧接收发送侧发送的时间信息数据包;
所述接收侧校验所述时间信息数据包,并根据所述时间信息数据包获取时间信息;
根据所述获取的时间信息,所述接收侧发起时间同步。
2.如权利要求1所述的时间同步方法,其特征在于,所述发送侧分片发送所述时间信息数据包,所述接收侧接收发送侧发送的时间信息数据包的步骤包括:
所述接收侧接收所述发送侧发送的时间信息数据包分片,并重装为时间信息数据包。
3.如权利要求1或2所述的时间同步方法,其特征在于,所述接收侧校验所述时间信息数据包,并根据所述时间信息数据包获取时间信息的步骤包括:
所述接收侧校验所述时间信息数据包是否正确且完整;
若所述时间数据包正确且完整,则根据所述时间信息数据包获取消息净荷,得到时间信息,所述消息净荷包括所述时间信息。
4.如权利要求3所述的时间同步方法,其特征在于,所述时间信息数据包包括帧头、消息头、消息长度域、消息净荷和帧校验序列域,所述接收侧校验所述时间信息数据包是否正确且完整的步骤包括:
所述接收侧根据所述帧头校验所述时间信息数据包是否正确,根据所述消息头校验所述时间信息数据包是否正确,根据所述消息长度域和所述消息净荷校验所述时间信息数据包是否完整,根据所述消息净荷和所述帧校验序列域校验所述时间信息数据包是否完整;
若所述帧头校验正确,且所述消息头校验正确,且所述消息长度域和所述消息净荷校验完整,且所述消息净荷和所述帧校验序列域校验完整,则判定所述时间信息数据包正确且完整。
5.如权利要求4所述的时间同步方法,其特征在于,所述接收侧校验所述时间信息数据包是否正确且完整的步骤之后,还包括:
若所述时间信息数据包不正确或不完整,则所述接收侧丢弃所述时间信息数据包。
6.如权利要求5所述的时间同步方法,其特征在于,所述发送侧分片发送所述时间信息数据包,所述时间信息数据包的消息头携带有本次时间同步的周期编号,所述接收侧校验所述时间信息数据包是否正确且完整的步骤之后,还包括:
根据所述周期编号校验所述发送侧发送的时间信息数据包分片是否正确;若所述周期编号校验正确,则转入执行步骤:若所述时间数据包正确且完整,则根据所述时间信息数据包获取消息净荷,得到时间信息,所述消息净荷包括所述时间信息;若所述周期编号校验不正确,则转入执行步骤:若所述时间信息数据包不正确或不完整,则所述接收侧丢弃所述时间信息数据包;
所述若所述时间信息数据包不正确或不完整,则所述接收侧丢弃所述时间信息数据包的步骤之后,还包括:
根据所述周期编号,获取在预设的质量检测周期内,所述时间信息数据包的丢包率;
若信息数据包的丢包率大于预设的阈值,则所述接收侧不发起时间同步。
7.如权利要求6所述的时间同步方法,其特征在于,所述时间同步包括绝对时间同步及/或秒脉冲同步,所述根据所述获取的时间信息,所述接收侧发起时间同步的步骤包括:
所述接收侧判断所述时间信息是否满足发起时间同步的预设条件;
若所述时间信息满足发起时间同步的预设条件,则发起绝对时间同步及/或秒脉冲同步。
8.如权利要求7所述的时间同步方法,其特征在于,所述若所述时间信息满足发起时间同步的预设条件,则发起绝对时间同步及/或秒脉冲同步的步骤包括:
若所述时间信息满足发起时间同步的预设条件,则所述接收侧根据所述时间信息发起绝对时间同步;
根据所述发送侧发送的时间信息数据包,恢复发送侧的秒脉冲信号;
根据所述发送侧的秒脉冲信号,调整所述接收侧本地的时钟频率,发起秒脉冲同步。
9.如权利要求8所述的时间同步方法,其特征在于,所述根据所述发送侧的秒脉冲信号,调整所述接收侧本地的时钟频率,发起秒脉冲同步的步骤包括:
根据所述发送侧的秒脉冲信号,获取与所述接收侧本地秒脉冲信号的相位偏差值;
判断所述相位偏差值是否超过预设的偏差阈值;
若所述相位偏差值超过预设的偏差阈值,则根据所述相位偏差值调整所述接收侧本地的时钟频率,获取所述接收侧调整后的秒脉冲信号,并转入执行步骤:根据所述发送侧的秒脉冲信号,获取与所述接收侧本地秒脉冲信号的相位偏差值;
若所述相位偏差值未超过预设的偏差阈值,则判定完成本次秒脉冲同步。
10.一种时间同步装置,其特征在于,所述时间同步装置包括:
接收模块,用于接收发送侧发送的时间信息数据包;
信息模块,用于校验所述时间信息数据包,并根据所述时间信息数据包获取时间信息;
同步模块,用于根据所述获取的时间信息,发起时间同步。
11.如权利要求10所述的时间同步装置,其特征在于,所述发送侧分片发送所述时间信息数据包,所述接收模块还用于,
接收所述发送侧发送的时间信息数据包分片,并重装为时间信息数据包。
12.如权利要求10或11所述的时间同步装置,其特征在于,所述信息模块包括:
校验单元,用于校验所述时间信息数据包是否正确且完整;
信息单元,用于若所述时间数据包正确且完整,则根据所述时间信息数据包获取消息净荷,得到时间信息,所述消息净荷包括所述时间信息。
13.如权利要求12所述的时间同步装置,其特征在于,所述时间信息数据包包括帧头、消息头、消息长度域、消息净荷和帧校验序列域,所述校验单元还用于,
根据所述帧头校验所述时间信息数据包是否正确,根据所述消息头校验所述时间信息数据包是否正确,根据所述消息长度域和所述消息净荷校验所述时间信息数据包是否完整,根据所述消息净荷和所述帧校验序列域校验所述时间信息数据包是否完整;
若所述帧头校验正确,且所述消息头校验正确,且所述消息长度域和所述消息净荷校验完整,且所述消息净荷和所述帧校验序列域校验完整,则判定所述时间信息数据包正确且完整。
14.如权利要求13所述的时间同步装置,其特征在于,所述时间同步装置还包括:
丢弃模块,用于若所述时间信息数据包不正确或不完整,则丢弃所述时间信息数据包。
15.如权利要求14所述的时间同步装置,其特征在于,所述发送侧分片发送所述时间信息数据包,所述时间信息数据包的消息头携带有本次时间同步的周期编号,所述校验单元还用于,
根据所述周期编号校验所述发送侧发送的时间信息数据包分片是否正确;
所述时间同步装置还包括:
质检模块,用于根据所述周期编号,获取在预设的质量检测周期内,所述时间信息数据包的丢包率;若信息数据包的丢包率大于预设的阈值,则不发起时间同步。
16.如权利要求15所述的时间同步装置,其特征在于,所述时间同步包括绝对时间同步及/或秒脉冲同步,所述同步模块包括:
条件单元,用于判断所述时间信息是否满足发起时间同步的预设条件;
同步单元,用于若所述时间信息满足发起时间同步的预设条件,则发起绝对时间同步及/或秒脉冲同步。
17.如权利要求16所述的时间同步装置,其特征在于,所述同步单元包括:
绝对时间同步子单元,用于若所述时间信息满足发起时间同步的预设条件,则根据所述时间信息发起绝对时间同步;
秒脉冲同步子单元,用于根据所述发送侧发送的时间信息数据包,恢复发送侧的秒脉冲信号;根据所述发送侧的秒脉冲信号,调整本地的时钟频率,发起秒脉冲同步。
18.如权利要求17所述的时间同步装置,其特征在于,所述秒脉冲同步子单元还用于,
根据所述发送侧的秒脉冲信号,获取与本地秒脉冲信号的相位偏差值;
判断所述相位偏差值是否超过预设的偏差阈值;
若所述相位偏差值超过预设的偏差阈值,则根据所述相位偏差值调整本地的时钟频率,获取调整后的秒脉冲信号;
若所述相位偏差值未超过预设的偏差阈值,则判定完成本次秒脉冲同步。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510957093.1A CN106899371B (zh) | 2015-12-18 | 2015-12-18 | 时间同步方法和装置 |
PCT/CN2016/095861 WO2017101484A1 (zh) | 2015-12-18 | 2016-08-18 | 时间同步方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510957093.1A CN106899371B (zh) | 2015-12-18 | 2015-12-18 | 时间同步方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106899371A true CN106899371A (zh) | 2017-06-27 |
CN106899371B CN106899371B (zh) | 2020-12-11 |
Family
ID=59055665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510957093.1A Active CN106899371B (zh) | 2015-12-18 | 2015-12-18 | 时间同步方法和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106899371B (zh) |
WO (1) | WO2017101484A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108964825A (zh) * | 2018-07-10 | 2018-12-07 | 重庆思柏高科技有限公司 | 校时方法、校时装置和校时服务器 |
CN109347589A (zh) * | 2018-10-15 | 2019-02-15 | ***通信有限公司研究院 | 一种数据传输方法及网络节点 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10958727B2 (en) | 2019-02-07 | 2021-03-23 | International Business Machines Corporation | Facilitating precision time protocol use in a coordinated timing network |
US10903924B2 (en) | 2019-02-07 | 2021-01-26 | International Business Machines Corporation | Setting primary reference time of server time protocol facility of a coordinated timing network to a precision-time-protocol source |
CN116132011A (zh) * | 2021-11-15 | 2023-05-16 | 深圳市中兴微电子技术有限公司 | 时钟同步***及方法 |
CN114071694B (zh) * | 2021-11-17 | 2023-12-15 | 成都天奥电子股份有限公司 | 基于北斗卫星信号的授时精度提升方法、装置及存储介质 |
CN114221833B (zh) * | 2021-12-15 | 2023-12-05 | 傲普(上海)新能源有限公司 | Bms***数据通讯方法 |
CN114499731B (zh) * | 2022-01-25 | 2024-05-28 | 中电科航空电子有限公司 | 一种客舱广播音频的以太网同步方法及*** |
CN115150251B (zh) * | 2022-05-27 | 2023-11-03 | 中国南方电网有限责任公司 | 电力专网调度通信链路的故障诊断方法、***及管理平台 |
CN115175297B (zh) * | 2022-06-22 | 2024-05-14 | 中国电子科技集团公司第二十九研究所 | 一种卫星载荷秒脉冲自主恢复同步方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1523830A (zh) * | 2003-02-20 | 2004-08-25 | 华为技术有限公司 | 一种同步数字系列链路接入规程的解封装方法 |
CN1929337A (zh) * | 2005-09-05 | 2007-03-14 | 华为技术有限公司 | 无线收发设备间实现信息传递的方法及*** |
CN101483497A (zh) * | 2008-12-15 | 2009-07-15 | 华亚微电子(上海)有限公司 | 数据传输***及其接收端、数据包恢复方法 |
US20100034190A1 (en) * | 2007-05-17 | 2010-02-11 | Hanyang Navicom Co., Ltd | Apparatus for wireless communication and method for synchronizing time thereof |
CN101257442B (zh) * | 2008-04-03 | 2010-05-12 | 中国人民解放军国防科学技术大学 | 基于时间压力的时间确定性数据交换方法 |
CN102083194A (zh) * | 2009-11-30 | 2011-06-01 | 大唐移动通信设备有限公司 | 时间信息发送与时间同步方法、***和设备 |
CN102882669A (zh) * | 2012-08-23 | 2013-01-16 | 上海柏飞电子科技有限公司 | 一种两线接口时间同步协议方法 |
CN103401672A (zh) * | 2013-07-24 | 2013-11-20 | 福建星网锐捷网络有限公司 | 时间同步装置、设备及*** |
CN104468013A (zh) * | 2014-11-21 | 2015-03-25 | 中国运载火箭技术研究院 | 一种无线组网通信的时隙结构确定方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101615948A (zh) * | 2008-06-25 | 2009-12-30 | 鼎桥通信技术有限公司 | 一种实现时间同步的方法及*** |
-
2015
- 2015-12-18 CN CN201510957093.1A patent/CN106899371B/zh active Active
-
2016
- 2016-08-18 WO PCT/CN2016/095861 patent/WO2017101484A1/zh active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1523830A (zh) * | 2003-02-20 | 2004-08-25 | 华为技术有限公司 | 一种同步数字系列链路接入规程的解封装方法 |
CN1929337A (zh) * | 2005-09-05 | 2007-03-14 | 华为技术有限公司 | 无线收发设备间实现信息传递的方法及*** |
US20100034190A1 (en) * | 2007-05-17 | 2010-02-11 | Hanyang Navicom Co., Ltd | Apparatus for wireless communication and method for synchronizing time thereof |
CN101257442B (zh) * | 2008-04-03 | 2010-05-12 | 中国人民解放军国防科学技术大学 | 基于时间压力的时间确定性数据交换方法 |
CN101483497A (zh) * | 2008-12-15 | 2009-07-15 | 华亚微电子(上海)有限公司 | 数据传输***及其接收端、数据包恢复方法 |
CN102083194A (zh) * | 2009-11-30 | 2011-06-01 | 大唐移动通信设备有限公司 | 时间信息发送与时间同步方法、***和设备 |
CN102882669A (zh) * | 2012-08-23 | 2013-01-16 | 上海柏飞电子科技有限公司 | 一种两线接口时间同步协议方法 |
CN103401672A (zh) * | 2013-07-24 | 2013-11-20 | 福建星网锐捷网络有限公司 | 时间同步装置、设备及*** |
CN104468013A (zh) * | 2014-11-21 | 2015-03-25 | 中国运载火箭技术研究院 | 一种无线组网通信的时隙结构确定方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108964825A (zh) * | 2018-07-10 | 2018-12-07 | 重庆思柏高科技有限公司 | 校时方法、校时装置和校时服务器 |
CN109347589A (zh) * | 2018-10-15 | 2019-02-15 | ***通信有限公司研究院 | 一种数据传输方法及网络节点 |
Also Published As
Publication number | Publication date |
---|---|
WO2017101484A1 (zh) | 2017-06-22 |
CN106899371B (zh) | 2020-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106899371A (zh) | 时间同步方法和装置 | |
US11006378B2 (en) | Synchronizing clocks in a wireless system | |
US9876629B2 (en) | Communication apparatus, time synchronization system, and time synchronization method | |
US8705578B2 (en) | Method and system for implementing time synchronization in local area network (LAN) | |
US8891716B2 (en) | Node device and method for synchronizing clock times | |
CN101485126A (zh) | 同步基站组件的方法 | |
CN105577309B (zh) | 一种卫星通信***全网时钟同步方法 | |
US20220360350A1 (en) | Method and apparatus for acquiring timestamp of data stream, storage medium, and electronic apparatus | |
WO2023124403A1 (zh) | 一种时钟同步的方法、装置和*** | |
CN105245324A (zh) | 时钟同步方法及装置 | |
CN113541838A (zh) | 确定时钟的方法和相关装置 | |
CN112187390A (zh) | 时间同步的方法和设备 | |
WO2017000480A1 (zh) | 时间同步方法、服务器及***、存储介质 | |
Chowdhury | NextGen Network Synchronization | |
CN107493599B (zh) | 通过基带射频接口实现基站设备间时间同步的方法、装置和*** | |
CN103580767A (zh) | 一种无线通信网时钟同步方法、装置及网元 | |
CN105960820A (zh) | 一种同步装置及方法 | |
CN115623582B (zh) | 一种低轨卫星星座时间同步方法、***、装置及介质 | |
CN101257361A (zh) | 通过同步数字体系网络进行精确时间传送的方法及网元 | |
CN116599616A (zh) | 基站时钟切换方法、装置、基站及介质 | |
WO2020195573A1 (ja) | 時刻同期システム、中継装置、時刻同期方法、及び非一時的なコンピュータ可読媒体 | |
TW202143766A (zh) | 交通工具通訊中的時間同步操作 | |
KR20040007159A (ko) | 자동 식별 장치의 시각 동기 방법 및 그를 이용한 자동식별 장치 | |
EP2099146A1 (en) | Network clock for mobile phones | |
CN116264731A (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 |