一种gps校准的守时钟的制作方法

文档序号:6255560阅读:292来源:国知局

专利名称::一种gps校准的守时钟的制作方法
技术领域
:本发明属于GPS授时和守时领域,特别是涉及一种GPS校准的守时钟。
背景技术
:守时钟是一种由标准频率源和具有一定分频比的分频器、计数器构成的精确时钟。守时是指已被校准的时钟在自主运行的状态下,保持其时间与标准时间之间的误差尽可能小的能力。守时精度也即时钟自主运行的时间精度是衡量时钟性能优劣的一个重要的技术指标。该指标可定义为在一定的外部条件下,时钟自主运行的时间和在此期间产生的时间偏差之比。时钟的守时能力主要取决于标准频率源的频率稳定度。实用的标准频率源有原子频标和高稳晶振频标两大类,其中后者是使用最为广泛的标准频率源。表述晶体振荡器性能的主要技术指标有初始精度、稳定度(主要是温度稳定度)和老化率等。根据晶振的精度和稳定度的不同晶振可分为4类即普通晶振(SPXO)、电压控制式晶振(VCXO)、温度补偿式晶振(TCXO)和恒温式晶振(OCXO)。也存在上述4种类型的组合,如压控恒温晶振(VOCXO)等。TCX0、0CX0和VOCXO是常用来构建守时钟的晶振类型。从频率的稳定度来看,OCXO的指标优于TCXO和同等工艺水平的VOCXO。由于存在不可逆的老化问题,晶振输出的频率准确度会随着时间的流逝产生不可逆的偏差。这是导致时钟守时精度下降的主要原因。解决的方法是利用授时型GPS接收机输出的标准时间信号或其它标准时间信号测算出晶振的实际准确度误差,并进行适当校正补偿。最常用的校正补偿方案是采用锁相环方案,即先测算出晶振的频率偏差,生成补偿量,再将补偿量转换成电压直接调节VOCXO晶振的输出频率,使其频率锁定在额定的频率上,达到锁频守时的功能。这种方案的优点是在实现守时的同时也实现了锁频;其缺点是方案实现起来电路复杂,需要采用高精度的DAC、多路电源和具有挑战性的模拟电路设计。在只需要守时(不需要锁频)的情况下,可通过改变时钟电路的分频比来补偿晶振的频偏。这种方案的优点在于电路是全数字化的,故设计简单便于集成。此外,还可以采用稳定度高于同类型VOCXO的OCXO作为频率源。
发明内容本发明的目的是提出一种基于加法器的分频比可以精细微调的全数字式高精度守时钟。当GPS接收机定位后,守时钟自动测量计算出晶振的准确度误差值并生成相应的补偿值,利用该补偿值微调时钟电路的分频比,实现GPS接收机失锁后的高精度守时。一种GPS校准的守时钟,包括单片机、可编程逻辑器件、时间-数字转换器TDC、GPS接收机、天线及晶振,GPS接收机的秒脉冲信号分别传送给单片机、可编程逻辑器件和时间-数字转换器TDC,所述可编程逻辑器件中具有分频比可调的时钟电路,晶振的输出驱动时钟电路运转,其分频产生的秒脉冲信号也送入所述的时间-数字转换器TDC;在所述GPS接收机定位后,所述单片机根据所述时间_数字转换器TDC测量的上述两个秒脉冲信号的相位差计算出晶振的频率准确度误差,并根据上述误差进一步计算出补偿该误差的时钟步距微调值,输入所述时钟电路中,从而动态更新所述时钟电路的分频比;当所述GPS接收机失去定位后,守时钟进入“守时”状态,所述晶振驱动时钟电路自主走时,即能够实现精确守时。本发明所述的时钟电路包括!·位的秒时间值累加器、r-ρ+Ι位的步距值寄存器、r-q+Ι位的步距微调寄存器、r-ρ+Ι位的额定步距值常数寄存器、第一加法器和第二加法器、其中r、p和q均为自然数,且r>q>p,将计算出的上述时钟步距微调值写入步距微调寄存器中,通过所述第二加法器将步距微调寄存器的数值与所述额定步距值常数寄存器的数值相加后的结果送入步距值寄存器,晶振周期秒时间值累加器的数值与步距值寄存器经第一加法器进行无符号数相加后送回到该秒时间值累加器中,实现所述时钟电路分频比的更新。本发明所述的相位差的测量是在定位后的“测量”状态下进行的,在该“测量”状态下,所述单片机(1)每秒一次不断地测量和记录GPS接收机的秒脉冲信号GPS-IPPS和分频产生的秒脉冲信号ABC-IPPS两个脉冲的相位差,并得到多组测量结果。本发明所述的晶振的频率准确度误差是对所述多组测量结果进行卡尔曼滤波处理后计算得出的。本发明在所述“测量”状态下,当满足如下条件之一时①GPS接收机(4)的秒脉冲信号GPS-IPPS和分频产生的秒脉冲信号ABC-IPPS的相位差超出所述的时间_数字转换器TDC的测量范围;②测量的次数超出预先设置的上限值时;守时钟进入“更新步距”状态,在该“更新步距”状态下,根据上述多组测量结果测算出晶振的准确度误差,并进一步计算出相应的时钟步距微调值并写入步距微调寄存器中,更新时钟电路的分频比,然后返回“测量”状态,循环上述过程,直至GPS接收机失去定位状态。本发明在GPS接收机再次定位后,守时钟从“守时”状态重新回到“测量”状态。本发明在定位后进入“测量”状态前、从“更新步距”状态返回“测量”状态前以及进入“守时”状态前,均先对所述两个秒脉冲信号完成一次“同步”操作。本发明所述的定位由所述单片机(1)依据GPS接收机(4)发出的定位授时报文确定。一种应用上述任一项技术方案所述的守时钟进行精确守时的方法,包括如下步骤(1)根据守时精度要求确定晶振类型并进一步确定所述时钟电路中的秒时间值累加器、步距值寄存器、步距微调寄存器和额定步距值常数寄存器的位数;(2)更新步距在所述GPS接收机定位后,单片机每秒一次不断地记录GPS-IPPS和ABC-IPPS两个脉冲的相位差测量结果;当发生如下条件至少之一时①GPS-IPPS和ABC-IPPS两个脉冲的相位差超出TDC3的测量范围或②测量的次数超出预先设置的一个上限值,单片机采用卡尔曼滤波算法对前面多次记录的测量结果进行滤波后测算出晶振的准确度误差并进一步计算出相应的时钟步距补偿值并写入步距微调寄存器中;(3)当所述守时钟失去定位进入守时状态时,基于上述写入步距微调寄存器的时钟步距补偿值改变所述时钟电路的分频比,实现精确守时。进一步地,上述步骤(1)中,先根据守时精度要求确定所需晶振的频率稳定度,选定晶振,再根据上述晶振的频率稳定度确定所述秒时间值累加器的位数r,根据晶振的额定周期值确定r-ρ+Ι位的额定步距值常数的参数p,根据补偿晶振的最大频率误差范围确定r-q+Ι位的步距微调寄存器的参数q,从而确定出累加器和各寄存器的位数。本发明的技术效果体现在(1)采用可编程逻辑器件实现基于加法器的分频比可精细微调的时钟电路来补偿晶振的频率偏差实现高精度守时,整个方案为全数字电路,具有设计简单、便于集成和要求的电源种类少等优点。(2)时钟电路的频率源可采用稳定度更高的OCXO而不是VCOXO晶振,利于提高时钟的守时精度。图1:GPS校准的全数字式守时钟结构框图;图2可编程器件内部基于加法器的时钟电路逻辑框图;图3守时钟的状态转换图;图4时差法测频差示意图表1寄存器位代表的时间分辨率;具体实施例方式下面结合附图和具体实施例对本发明作进一步说明。基于加法器的全数字式守时钟包括GPS接收机4、天线5、单片机1、可编程逻辑器件2、晶振6和时间-数字转换器TDC3;GPS接收机4输出的秒脉冲信号GPS-IPPS分别传送给单片机1、可编程逻辑器件2和TDC3,GPS接收机4输出的NMEA-0183定位授时报文传送给单片机1;单片机1依据报文判定GPS接收机是否已定位(锁定4颗及4颗以上的卫星),并据此控制时钟电路进入不同的工作状态。单片机1通过数据总线DBUS、地址总线ABUS和控制信号线CS、WR、SELE和CLEAR与可编程逻辑器件2相连,通过SPI总线与TDC3相连。所述可编程逻辑器件2中的基于加法器的时钟电路如图2所示,包括一个r位(二进制位数范围[-1位,_r位])的秒时间值累加器21、一个(r-ρ+Ι)位([-ρ位,_r位])的步距值寄存器22、一个(r-q+Ι)位([_q位,_r位])的步距微调寄存器23、一个(r_p+l)位([-P位,_r位])的额定步距值常数24、加法器25、加法器26、或门27、二选一选择器28和与门29。表1给出了每一个二进制数位对应的时间分辨率。如图2所示晶振6的输出驱动整个时钟电路运转,即每一个晶振周期秒时间值累加器21的数值[-1位,-r位]与步距值寄存器22[-ρ位,-r位]进行无符号数相加后送回到秒时间值累加器21[-1位,-r位]中;当秒时间值累加器21溢出时产生秒脉冲ABC-IPPS;改变步距值寄存器22的数值即可改变时钟电路的分频比;而步距值寄存器22的数值[-ρ位,τ位]是由额定步距值常数24[_p位,-r位]和步距微调寄存器23[_q位,_r位]在同步清零脉冲SYN-CLR的作用下进行符号扩展和补码相加产生的。步距微调寄存器23的数值是由单片机1写入的一个[_q位,_r位]的补码,其中最高位(即_q位)为符号位,其它位为数值位。相加前,[-Q位,τ位]的补码先符号扩展为[-P位,τ位]后再与[_p位,_r位]的额定步距值常数24相加生成新的[-ρ位,-r位]的时钟步距值并写入步距值寄存器22中。当写入的步距微调值为正数时,生成的时钟步距值增大,秒时间值累加器21溢出时刻提前,对应的秒脉冲ABC-IPPS周期减小,相当于减小了电路的分频比;当写入的步距微调值为负数时,结果正好相反。如图2所示GPS-IPPS信号送入TDC3的ST0P2输入端;ABC-1PPS信号送入TDC3的STOPl输入端;或门27将GPS-IPPS和ABC-IPPS两个脉冲信号“或”运算后产生信号GorA-IPPS送到TDC3的START输入端作为测量时差的启动信号。当守时钟处于“测量状态”时单片机1控制TDC3每秒完成一次对GPS-IPPS和ABC-IPPS两个脉冲前沿的相位差测量;并采用卡尔曼滤波算法对多次测量的结果(图4所示的Atl、At2...)进行滤波后,测算出晶振6的准确度误差;再将该误差转换成相应的时钟步距补偿值写入步距微调寄存器23中;当处于“守时状态”时利用该补偿值实现高精度守时。如图2所示当单片机1需要控制时钟电路与GPS的秒脉冲完成一次“同步操作”时,发出CLEAR信号,该信号与GPS-IPPS经过与门29“相与”后在GPS-IPPS的前沿产生SYN-CLR信号。SYN-CLR信号使秒时间值累加器21清零实现同步(图4所示GPS-IPPS和ABC-IPPS两个脉冲的前沿对齐),并使加法器26完成一次加法运算,更新步距值寄存器22的内容。单片机1根据工作状态的不同发出SELE信号给二选一数据选择器28,从GPS-IPPS和ABC-IPPS两个脉冲信号中选出当前最准确的秒脉冲0PT-1PPS输出,该信号也送到单片机1的INT2脚。图3是守时钟的工作状态转换图,守时钟上电后进入“初始化”状态,在此状态下等待GPS接收机定位即至少锁定4颗及4颗以上卫星;定位后先完成一次“同步”操作(发出CLEAR信号)后再进入“测量”状态;在“测量”状态下(发出SELE信号选择GPS-IPPS作为0PT-1PPS),单片机1每秒一次不断地记录GPS-IPPS和ABC-IPPS两个脉冲的相位差测量结果;当发生①GPS-IPPS和ABC-IPPS两个脉冲的相位差超出TDC3的测量范围或②测量的次数超出预先设置的一个上限值时,守时钟进入“更新步距”状态;在此状态下,单片机1采用卡尔曼滤波算法对前面多次记录的测量结果进行滤波后测算出晶振6的准确度误差并进一步计算出相应的时钟步距补偿值并写入步距微调寄存器23中,然后返回“测量”状态,返回前也要进行一次“同步”操作;“更新步距”状态是一个非稳定状态,守时钟只在该状态停留1秒的时间;若GPS接收机锁定的卫星数小于4颗则立即进入“守时”状态,进入前先完成一次“同步”操作,再选择ABC-IPPS作为0PT-1PPS;进入“守时”状态后,依靠晶振6驱动分频比经过微调补偿的时钟电路自主走时实现高精度守时;当GPS接收机再次定位后,时钟重新回到“测量”状态。当守时钟处于“测量”状态时,单片机1从GPS接收机4输出的NMEA-0183定位授时报文中解析出秒、分、时、日、月、年等时间信息;当守时钟处于“守时”状态时,单片机1根据0PT-1PPS秒脉冲产生的中断自动完成秒、分、时、日、月、年的加1计数和闰年闰月调整。假定需要实现的守时精度优于200us/天(即200us/86400秒=2.3148ns/秒,等效于晶振总的频率准确度必须小于2.3148ppb),因此为了留有一定余量晶振6选用频率稳定度优于lxlOE-9(即Ippb)的高稳恒温OCXO晶振。再假定晶振6的额定频率为20MHz(对应的额定周期To=50ns)。为了克服晶振老化率产生的频率准确度误差对守时精度的影响,必须定期进行测量校准,并保证两次校准期间晶振老化产生的频率准确度误差不大于总的准确度误差要求(即2.3148ppb)。确定图2中秒时间值累加器21的位数r:由于采用有限位二进制数表示晶振周期必然会产生截断误差,这里取截断误差不大于Ins/秒(应不大于2.3148ns/秒,且留有余量),对应的每个晶振周期的截断误差不大于lns/20MHz=5xlOE-17秒=50as,查表1知-55位对应27.76as满足要求,故取r=55位。确定图2中的额定步距值常数24和位数ρ由于晶振的额定周期To=50ns,查表1可以确定位数P必须是-25位(对应时间分辨率为29.80ns)。额定步距值常数24的二进制数范围是[-25位,-55位]共31位。额定步距值常数的计算公式为额定周期值/最低位时间分辨率,具体计算如下T0/2_r=50Χ1(Γ9/2#^1801439851=110,1011,0101,1111,1100,1010,0110,1011Β确定图2中的步距微调寄存器23的位数q:q的数值决定了电路可补偿晶振6的最大准确度偏差范围。假定守时钟在工作多年后,由于初始准确度误差,老化累积误差和其它因素造成的总的准确度误差不超过士lOppm。由此可确定ABC-IPPS秒脉冲的周期最大调节范围是士IOus/秒,对应每个晶振周期的最大可调节范围是士10us/20MHz=士0.5ps/晶振周期。查表1知_41位对应的时间分辨率为0.45475ps满足要求,因此可确定步距微调寄存器23的二进制数范围是[-40位,-55位]位数(增加1位符号位)共计16位。上述的基于加法器的时钟电路的逻辑设计可采用Verilog或VHDL语言设计、编译并烧写在可编程逻辑器件中。GPS接收机输出的IPPS秒脉冲的前沿相对于UTC时间整秒时刻存在着一个前后抖动的误差量,这个误差量一般认为是一个零均值的随机变量。如图4所示采用时差法测出的GPS_1PPS和ABC_1PPS的时差Atl、At2、...中也包含了这种误差。采用将多次测量结果平均或卡尔曼滤波算法可消除这个随机误差量对频差测量结果的影响。由于介绍这方面的算法和卡尔曼滤波算法的资料较多,这里不再赘述所述的GPS接收机4可采用任何一款授时型GPS接收机,如=Motorola公司的M12Mtiming型接收机。所述的单片机1可以采用任何一款计算资源和工作速度满足要求的单片机、DSP或ARM等。所述的可编程逻辑器件2可采用任何一款逻辑资源足够大的CPLD或FPGA,如Xilinx公司的XC95288XL。所述的时间-数字转换器TDC3可采用任何一款分辨率足够高的器件,如TDC-GP2(时间分辨率为50ps)。所述的晶振6可采用任何一款频率稳定度满足要求的恒温晶振OCXO或温补晶振TCXOo表1寄存器位代表的时间分辨率<table>tableseeoriginaldocumentpage9</column></row><table>注s=秒,ms=毫秒,us=微秒,ns=纳秒,ps=皮秒,fs=飞秒,as=阿秒,zs=仄秒权利要求一种GPS校准的守时钟,包括单片机(1)、可编程逻辑器件(2)、时间-数字转换器TDC(3)、GPS接收机(4)、天线(5)及晶振(6),GPS接收机(4)的秒脉冲信号分别传送给单片机(1)、可编程逻辑器件(2)和时间-数字转换器TDC(3),所述可编程逻辑器件(2)中具有分频比可调的时钟电路,晶振(6)的输出驱动时钟电路运转,其分频产生的秒脉冲信号也送入所述的时间-数字转换器TDC(3);在所述GPS接收机(4)定位后,所述单片机(1)根据所述时间-数字转换器TDC(3)测量的上述两个秒脉冲信号的相位差计算出晶振(6)的频率准确度误差,并根据上述误差进一步计算出补偿该误差的时钟步距微调值,输入所述时钟电路中,从而动态更新所述时钟电路的分频比;当所述GPS接收机(4)失去定位后,守时钟进入“守时”状态,所述晶振(6)驱动时钟电路自主走时,即能够实现精确守时。2.根据权利要求1所述的一种GPS校准的守时钟,其特征在于,所述的时钟电路包括r位的秒时间值累加器(21)、r-ρ+Ι位的步距值寄存器(22)、r-q+Ι位的步距微调寄存器(23)、r-ρ+Ι位的额定步距值常数寄存器(24)、第一加法器(25)和第二加法器(26)、其中r、p和q均为自然数,且r>q>p,将计算出的上述时钟步距微调值写入步距微调寄存器(23)中,通过所述第二加法器(26)将步距微调寄存器(23)的数值与所述额定步距值常数寄存器(24)的数值相加后的结果送入步距值寄存器(22),晶振周期秒时间值累加器(21)的数值与步距值寄存器(22)经第一加法器(25)进行无符号数相加后送回到该秒时间值累加器(21)中,实现所述时钟电路分频比的更新。3.根据权利要求1或2所述的一种GPS校准的守时钟,其特征在于,所述的相位差的测量是在定位后的“测量”状态下进行的,在该“测量”状态下,所述单片机(1)每秒一次不断地测量和记录GPS接收机(4)的秒脉冲信号GPS-IPPS和分频产生的秒脉冲信号ABC-IPPS两个脉冲的相位差,并得到多组测量结果。4.根据权利要求3所述的一种GPS校准的守时钟,其特征在于,所述的晶振(6)的频率准确度误差是对所述多组测量结果进行卡尔曼滤波处理后计算得出的。5.根据权利要求3或4所述的一种GPS校准的守时钟,其特征在于,在所述“测量”状态下,当满足如下条件之一时①GPS接收机(4)的秒脉冲信号GPS-IPPS和分频产生的秒脉冲信号ABC-IPPS的相位差超出所述的时间-数字转换器TDC(3)的测量范围;②测量的次数超出预先设置的上限值时;守时钟进入“更新步距”状态,在该“更新步距”状态下,根据上述多组测量结果测算出晶振(6)的准确度误差,并进一步计算出相应的时钟步距微调值并写入步距微调寄存器(23)中,更新时钟电路的分频比,然后返回“测量”状态,循环上述过程,直至GPS接收机(4)失去定位状态。6.根据权利要求1-5之一所述的一种GPS校准的守时钟,其特征在于,在GPS接收机(4)再次定位后,守时钟从“守时”状态重新回到“测量”状态。7.根据权利要求3-6之一所述的一种GPS校准的守时钟,其特征在于,在定位后进入“测量”状态前、从“更新步距”状态返回“测量”状态前以及进入“守时”状态前,均先对所述两个秒脉冲信号完成一次“同步”操作。8.根据权利要求1-7之一所述的一种GPS校准的守时钟,其特征在于,所述的定位由所述单片机(1)依据GPS接收机(4)发出的定位授时报文确定。9.一种应用上述任一项权利要求所述的守时钟进行精确守时的方法,包括如下步骤(1)根据守时精度要求确定晶振类型并进一步确定所述时钟电路中的秒时间值累加器(21)、步距值寄存器(22)、步距微调寄存器(23)和额定步距值常数寄存器(24)的位数;(2)更新步距在所述GPS接收机(4)定位后,单片机⑴每秒一次不断地记录GPS-IPPS和ABC-IPPS两个脉冲的相位差测量结果;当发生如下条件至少之一时①GPS-IPPS和ABC-IPPS两个脉冲的相位差超出TDC3的测量范围或②测量的次数超出预先设置的一个上限值,单片机(1)采用卡尔曼滤波算法对前面多次记录的测量结果进行滤波后测算出晶振(6)的准确度误差并进一步计算出相应的时钟步距补偿值并写入步距微调寄存器(23)中;(3)当所述守时钟失去定位进入守时状态时,基于上述写入步距微调寄存器(23)的时钟步距补偿值改变所述时钟电路的分频比,实现精确守时。10.根据权利要求9所述的方法,其特征在于,上述步骤(1)中,先根据守时精度要求确定所需晶振(6)的频率稳定度,选定晶振(6),再根据上述晶振(6)的频率稳定度确定所述秒时间值累加器(21)的位数r,根据晶振(6)的额定周期值确定r-ρ+Ι位的额定步距值常数(24)的参数P,根据补偿晶振(6)的最大频率误差范围确定r-q+Ι位的步距微调寄存器(23)的参数q,从而确定出累加器和各寄存器的位数。全文摘要本发明提出一种GPS校准的基于加法器的守时钟,包括依次相连的GPS接收机、单片机、晶振、可编程逻辑器件和时间-数字转换器(TDC)。在可编程逻辑器件中实现的基于加法器的可精细微调分频比的时钟电路将晶振频率分频为秒脉冲输出。利用GPS接收机输出的1PPS秒脉冲信号存在随机抖动误差但不存在累积误差,而高稳定度晶振分频后产生的秒脉冲短时稳定度好但存在累积误差的特点,采用时间-数字转换器(TDC)测量这两个秒脉冲的相位差并对多次测量的结果进行滤波后计算出晶振频率的准确度误差值,再将该误差值转换成时钟步距微调值,调节电路的分频比以补偿晶振由于老化产生的准确度误差,实现高精度守时。该守时钟具有全数字化,结构简单便于集成等优点。文档编号G04G5/00GK101799658SQ20101011622公开日2010年8月11日申请日期2010年2月24日优先权日2010年2月24日发明者周斌生,朱光伟,王群,魏丰申请人:华中科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1