时钟同步方法及系统的制作方法

文档序号:7750388阅读:127来源:国知局
专利名称:时钟同步方法及系统的制作方法
技术领域
本发明涉及通信领域,具体而言,涉及一种时钟同步方法及系统。
背景技术
在通信系统的全局时钟设计中,将系统时钟同步到全球卫星导航系统输出的秒脉 冲上的需求越来越多。然而,秒脉冲频率太低,每秒钟仅输出1个脉冲,且秒脉冲的占空比不为50%。相 关技术中,可以采用秒脉冲通过锁相环(PhaseLocked Loop,简称为PLL)的方式产生高频 的同步时钟,其中,高频时钟一般指频率大于10M的时钟。具体地,通过PLL的方式产生高频的同步时钟的方法包括首先采用门电路或者 现场可编程门阵列(Field Programable GateArray,简称为FPGA)将秒脉冲变为占空比为 50%的频率为1Hz的方波,然后通过PLL把1Hz频率的信号倍频为高频信号。但是,发明人发现,为满足系统时钟同步到全球卫星导航系统输出的秒脉冲上的 需求,通过PLL的方式产生高频的同步时钟时,时钟经过门电路和大倍数倍频后,时钟质量 下降明显。

发明内容
本发明的主要目的在于提供一种时钟同步方法及系统,以解决上述问题至少之
o根据本发明的一个方面,提供了 一种时钟同步方法。根据本发明的时钟同步方法包括将日时间T0D信号中标识当前秒脉冲上升沿的 时间值存储到时间累计寄存器中;在预定时间段内,以需要被同步的系统时钟信号为触发 信号,在时间累计寄存器中进行计时累加;预定时间段后,通过计算获取累加的时间值与 T0D信号中当前时间值的差值;采用差值调整系统时钟信号,直至系统时钟信号与秒脉冲 信号同步。根据本发明的另一方面,提供了在一种时间同步系统。根据本发明的时间同步系统包括时间累计寄存器,用于在预定时间段内,以需要 被同步的系统时钟信号为触发信号进行计时累加;微控制器单元,用于将日时间T0D信号 中标识当前秒脉冲上升沿的时间值存储到时间累计寄存器中,并在预定时间段后,通过计 算获取时间累计寄存器累加的时间值与T0D信号中当前时间值的差值;调整单元,用于采 用差值调整系统时钟信号,直至系统时钟信号与秒脉冲信号同步。通过本发明,跟随秒脉冲(lPulse Per Second,简称为1PPS)信号的日时间(Time of Day,简称为T0D)信号中有包含标识当前秒脉冲上升沿的时间,利用这个时间和时钟应 用系统内部的累计时间的差值,来调整系统时钟,解决了相关技术中为满足系统时钟同步 到全球卫星导航系统输出的秒脉冲上的需求,通过PLL的方式产生高频的同步时钟时,时 钟经过门电路和大倍数倍频后,时钟质量下降明显的问题,进而可以将系统时钟高精度地同步到秒脉冲上。


此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发 明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图1是秒脉冲(1PPS)信号和日时间(T0D)信号的接口时序图;图2是根据本发明实施例的时钟同步装置的结构框图;图3是根据本发明优选实施例的时钟同步装置的结构示意图;图4是根据本发明实例一的时钟同步装置的结构示意图;图5是根据本发明实例二的时钟同步装置的结构示意图;图6是根据本发明实施例的时钟同步方法的流程图;图7是根据本发明优选实施例的时钟同步方法的流程图。
具体实施例方式下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的 情况下,本申请中的实施例及实施例中的特征可以相互组合。全球定位系统(Global Position System,简称为GPS)、北斗等全球卫星导航系统 一般输出1PPS+T0D信号类型的时间信息。其中,1PPS信号为秒脉冲,T0D信号则是UART格 式的串行数据,波特率为9600,无奇偶校验,1个停止位,8个数据位。上述两种信号需要满 足时序关系,如图1所示,在1PPS上升沿1ms之后开始传送T0D信息,并在500ms内传完, 此T0D信息可用于标识当前1PPS上升沿时间。T0D协议报文的发送频率为1Hz。对于1PPS秒脉冲,采用上升沿作为准时沿,上升时间应小于50ns,脉宽应为 20ms 200ms。由图1可知,跟随秒脉冲信号的T0D信号中包含有标识当前秒脉冲上升沿的时间, 可以采用这个时间和时钟应用系统内部的累计时间的差值,来调整系统时钟信号。图2是根据本发明实施例的时钟同步系统的结构框图。如图2所示,根据本发明 实施例的时钟同步系统包括时间累计寄存器22、微控制器单元24、调整单元26。时间累计寄存器22,用于在预定时间段内,以需要被同步的系统时钟信号为触发 信号进行计时累加;微控制器单元24,用于将日时间(T0D)信号中标识当前秒脉冲上升沿的时间值存 储到时间累计寄存器中,并在预定时间段后,通过计算获取时间累计寄存器22累加的时间 值与T0D信号中当前时间值的差值;调整单元26,用于采用差值调整系统时钟信号,直至系统时钟信号与秒脉冲信号 同步。采用上述系统,解决了相关技术中为满足系统时钟同步到全球卫星导航系统输出 的秒脉冲上的需求,通过PLL的方式产生高频的同步时钟时,时钟经过门电路和大倍数倍 频后,时钟质量下降明显的问题,进而可以将系统时钟高精度地同步到秒脉冲上。在优选实施过程中,全球定位系统(Global Position System,简称为GPS)或北斗 终端设备产生的T0D信号和1PPS脉冲信号(秒脉冲信号)分别接入微控制器单元和时间累计及捕获单元。在时间累计及捕获单元中,运行着时间累计寄存器,该时间累计寄存器在 外部压控振荡器时钟的激励下,累加计时。累加的间隔由CLK的频率决定。时间累计寄存 器里的时间值不停的累加。优选地,如图3所示,上述系统还可以进一步包括触发单元28,用于将当前时间 累计寄存器中的时间值存储到时间暂时寄存器中;时间暂时寄存器30,用于存储时间累计 寄存器中的时间值。在优选实施过程中,1PPS信号送到时间累计及捕获单元中的触发逻辑或电路(即 上述触发单元)。1PPS上升沿到来时,触发逻辑或电路控制把此时刻时间累计寄存器里的 值储存到时间暂时寄存器中,起到捕获时间的功能。优选地,上述触发单元28,还用于向微控制器单元发送中断指令;上述微控制器 单元24,还用于在接收到中断指令的情况下,进入中断处理程序,接收T0D信号。在优选实施过程中,在系统同步的初始阶段,微控制器单元根据所要产生的时钟 频率,计算出一个电压值(或者在程序里储存几种频率-电压对应关系),通过数字量的形 式发送给数模转换单元(DAC),DAC把这个数字量转化为模拟电压控制压控振荡器输出所 要频率的时钟,其中,该时钟可能还没有精确同步于1PPS脉冲的上升沿。优选地,微控制器单元24,还用于在T0D信号中时间值存储到时间累计寄存器之 后的下一个秒脉冲信号或间隔多个秒脉冲信号的上升沿到来时,计算当前T0D信号的时间 值与时间累计寄存器中当前时间值的差值,并采用该差值调整时间累计寄存器中的时间值 与当前T0D信号的时间值一致。在优选实施过程中,上述预定时间段内的初始阶段,1PPS信号的上升沿到来时,触 发逻辑或电路产生一个中断给微控制器单元,微控制器单元进入中断处理程序,接收T0D 信息,分解出里面的时间信息。微处理器将分解出来的时间信息通过图中的时间调整指示 箭头直接写入时间累计寄存器。之所以直接写入时间值是因为在系统上电、复位的初始阶 段,时间累计寄存器里的时间值和T0D信息里的时间值相差太大,无法通过调整时钟来进 行微调。在下一个1PPS脉冲到来时(或间隔几个秒脉冲),微控制器单元读走时间暂存寄 存器里捕获的时间信息,与T0D内的时间信息比较,计算出时间差值。通过图3所示的时间 调整线把时间累计寄存器内的时间信息调整到与T0D内时间信息相同。优选地,如图4所示,上述调整单元26可以进一步包括数模转换单元260,用于 将接收到的对应于差值的数字信号转换为模拟电压,并输出至非可编程的压控振荡器(即 通常所说的压控振荡器);压控振荡器262,用于根据模拟电压输出同步于秒脉冲信号的系 统时钟信号。以下结合图4描述上述优选实施方式。如图4所示,微控制器单元直接读取T0D信号的时间信息,发现该时间信息到来 后,直接去时间暂时寄存器中读取捕获时间累计寄存器里的时间信息。其中,在1PPS信号 的上升沿到来时,触发逻辑或电路已经把时间累计寄存器里的时间信息捕获到了时间暂时 寄存器中。此外,微控制器单元读取时间暂时寄存器,并对时间累计寄存器进行时间调整动 作,可以合并为一组双向的信号线。通过读取、写入时间累计及捕获单元中的时间累计寄存 器中实现。
优选地,如图4所示,上述调整单元26还可以进一步包括可编程的压控振荡器 264,用于根据接收到的对应于差值的数字信号输出同步于秒脉冲信号的系统时钟信号。以 下结合图5描述上述优选实施方式。如图5所示,采用可编程的压控振荡器取代了图4中所示的DAC以及压控振荡器。 可编程的压控振荡器和微控制器之间一般是IIC接口,这种两线接口也节省了资源。最重 要的是,图4中微控制器单元输出数字量,由DAC将该数字量转变为模拟量后控制压控振荡 器,模拟信号线比较容易受干扰。图5中由于在线路上传的是数字量,几乎不受干扰。可编 程压控振荡器根据微控制器单元传送过来的指令,精确控制自己的时钟输出。需要注意的是,假设上述预定时间段T = ,在累加一段时间之后,调整系统时 钟信号。之后微控制器再次把T0D信号中的时间信息同步到时间累计寄存器中,并累计一 段时间T2。然后读取T0D里的时间信息和时间寄存器里的信息,比较并调整压控振荡器的 输出,此步骤为重复前面的步骤。此调整步骤前,CLK或许已经比较同步于1PPS脉冲,因此 可以把T2适当拉长,也就是说T2 > 1\。每次重复该步骤是,T都可以延长,这样使精度越来越高。经过多次闭环式调整,最终压控振荡器的输出时钟的无限接近同步于1PPS脉冲。 实现了将1PPS脉冲同步到时钟应用系统中的方法。图6是根据本发明实施例的时钟同步方法的流程图。如图6所示,该时钟同步方 法包括以下处理步骤S602 将日时间(T0D)信号中标识当前秒脉冲上升沿的时间值存储到时间累 计寄存器中;步骤S604 在预定时间段内,以需要被同步的系统时钟信号为触发信号进行计时 累加;步骤S606 预定时间段后,通过计算获取累加的时间值与T0D信号中当前时间值 的差值;步骤S608 采用差值调整系统时钟信号,直至系统时钟信号与秒脉冲信号同步。上述累加的时间值是1PPS上升沿到来的时间,而从T0D信息里分解出的时间值也 是描述1PPS信号上升沿的绝对时间。如果压控振荡器输出的时钟CLK完全同步于1PPS脉 冲,因而采用上述方法,在运行一段时间T1后,上述两个时间值应该是完全相等的。优选地,在执行步骤S602之前,还可以包括以下处理(1)微控制器单元将数字信号输出至数模转换单元;(2)数模转换单元将数字信号转换为模拟电压,以控制非可编程的压控振荡器输 出所需频率的时钟信号。即在系统同步的初始阶段,微控制器根据所要产生的时钟信号频率,计算出一个 电压值(或者在程序里储存几种频率_电压对应关系),通过数字量的形式发送给数模转换 单元(DAC),DAC把这个数字量转化为模拟电压控制压控振荡器输出所要频率的时钟,该时 钟现在还没有精确同步于1PPS脉冲的上升沿。上述优选实施方式具体可以参见图4。优选地,在执行步骤S602之前,还可以包括以下处理(1)微控制器单元将数字信号输出至可编程的压控振荡器;(2)可编程的压控振荡器根据数字信号输出所需频率的时钟信号。
即采用可编程的压控振荡器替代DAC和压控振荡器。微控制器根据所要产生的时 钟信号频率,计算出一个电压值(或者在程序里储存几种频率-电压对应关系),通过数字 量的形式发送给可编程的压控振荡器。此处,由于在线路上传的是数字量,不易受到干扰。 上述优选实施方式具体可以参见图5。优选地,上述步骤S602可以进一步包括以下处理在将T0D信号中时间值存储到 时间累计寄存器中之后的在下一个秒脉冲信号或间隔多个秒脉冲信号的上升沿到来时,微 控制器单元计算当前T0D信号的时间值与时间累计寄存器中当前时间值的差值,并采用该 差值调整时间累计寄存器中的时间值与当前T0D信号的时间值一致。以下结合图7描述上述优选实施过程。图7是根据本发明优选实施例的时钟同步方法的流程图。如图7所示,该时钟同 步方法包括以下处理步骤S702 系统同步的初始阶段,微控制器单元输出数字量的电压值,通过DAC操 作压控振荡器,输出所需频率的时钟。此时,该时钟还没有同步于秒脉冲。步骤S704 在1PPS脉冲的上升沿到来时,微控制器单元将T0D信息中的时间信息 写入时间累计及捕获单元里的时间累计寄存器,并开始累计计时。步骤S706 在下一个秒脉冲信号或间隔多个秒脉冲信号的上升沿到来时,通过计 算T0D中时间值和时间累计寄存器中时间值的差别,调整时间累计寄存器内的时间值,使 与T0D中时间值一致。步骤S708 累计计数一段时间T1后,计算T0D中时间值和时间累计寄存器中时间 值的差,换算成数字的电压调整值,通过DAC来微调压控振荡器的电压输入。需要注意的是,可以重复执行步骤S706和步骤S708。累计的计数时间T(例如, T2、T2、T3. . . Tn)应大于1\,使压控振荡器的输出逐渐精确同步于秒脉冲。综上所述,借助本发明提供的上述实施例,可以将秒脉冲信号同步到时钟应用系 统中,生成无限接近同步于秒脉冲的时钟信号。相对于采用逻辑门+PLL的简单分频方式而 言,避免了时钟经过门电路和大倍数倍频后,时钟质量下降明显的问题。并且,根据本发明 实施例提供的技术方案,具有闭环、精度高和易实现等优点。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用 的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成 的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储 在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示 出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或 步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技 术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修 改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
一种时钟同步方法,其特征在于,包括将日时间TOD信号中标识当前秒脉冲上升沿的时间值存储到时间累计寄存器中;在预定时间段内,以需要被同步的系统时钟信号为触发信号,在所述时间累计寄存器中进行计时累加;所述预定时间段后,通过计算获取所述累加的时间值与TOD信号中当前时间值的差值;采用所述差值调整所述系统时钟信号,直至所述系统时钟信号与秒脉冲信号同步。
2.根据权利要求1所述的方法,其特征在于,在所述以系统时钟为触发进行计时累加 之前,还包括微控制器单元将数字信号输出至数模转换单元;所述数模转换单元将所述数字信号转换为模拟电压,以控制非可编程的压控振荡器输 出所需频率的时钟信号。
3.根据权利要求1所述的方法,其特征在于,在所述以系统时钟为触发进行计时累加 之前,还包括微控制器单元将数字信号输出至可编程的压控振荡器; 所述可编程的压控振荡器根据所述数字信号输出所需频率的时钟信号。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述以系统时钟信号为触发 信号进行计时累加包括所述微控制器单元计算当前所述T0D信号的时间值与所述时间累计寄存器中当前时 间值的差值,并采用该差值调整所述时间累计寄存器中的时间值与当前所述T0D信号的时 间值一致。
5.一种时间同步系统,其特征在于,包括时间累计寄存器,用于在预定时间段内,以需要被同步的系统时钟信号为触发信号进 行计时累加;微控制器单元,用于将日时间T0D信号中标识当前秒脉冲上升沿的时间值存储到时间 累计寄存器中,并在所述预定时间段后,通过计算获取所述时间累计寄存器累加的时间值 与T0D信号中当前时间值的差值;调整单元,用于采用所述差值调整所述系统时钟信号,直至所述系统时钟信号与秒脉 冲信号同步。
6.根据权利要求5所述的系统,其特征在于,所述调整单元包括数模转换单元,用于 将接收到的对应于所述差值的数字信号转换为模拟电压,并输出至非可编程的压控振荡 器;所述压控振荡器,用于根据所述模拟电压输出同步于所述秒脉冲信号的所述系统时钟信号。
7.根据权利要求5所述的系统,其特征在于,所述调整单元包括可编程的压控振荡器,用于根据接收到的对应于所述差值的数字信号输出同步于所述 秒脉冲信号的所述系统时钟信号。
8.根据权利要求5至7中任一项所述的系统,其特征在于,所述微控制器单元,还用于计算当前所述T0D信号的时间值与所述时间累计寄存器中当前时间值的差值,并采用该差值调整所述时间累计寄存器中的时间值与当前所述T0D信号的时间值一致。
9.根据权利要求5至7中任一项所述的系统,其特征在于,还包括触发单元,用于将当前所述时间累计寄存器中的时间值存储到时间暂时寄存器中; 所述时间暂时寄存器,用于存储所述时间累计寄存器中的时间值。
10.根据权利要求9所述的系统,其特征在于,所述触发单元,还用于向所述微控制器单元发送中断指令;所述述微控制器单元,还用于在接收到所述中断指令的情况下,进入中断处理程序,接 收所述T0D信号。
全文摘要
本发明公开了一种时钟同步方法及系统。在上述方法中,将日时间TOD信号中标识当前秒脉冲上升沿的时间值存储到时间累计寄存器中;在预定时间段内,以需要被同步的系统时钟信号为触发信号,在时间累计寄存器中进行计时累加;预定时间段后,通过计算获取累加的时间值与TOD信号中当前时间值的差值;采用差值调整系统时钟信号,直至系统时钟信号与秒脉冲信号同步。根据本发明提供的技术方案,可以将系统时钟高精度地同步到秒脉冲上。
文档编号H04L7/00GK101873187SQ20101018873
公开日2010年10月27日 申请日期2010年5月25日 优先权日2010年5月25日
发明者余宇翔, 张高安, 胡亮, 郭正钧, 高磊 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1