CN109617641B - 一种基于秒脉冲的可调精度时间获取方法 - Google Patents
一种基于秒脉冲的可调精度时间获取方法 Download PDFInfo
- Publication number
- CN109617641B CN109617641B CN201811471449.0A CN201811471449A CN109617641B CN 109617641 B CN109617641 B CN 109617641B CN 201811471449 A CN201811471449 A CN 201811471449A CN 109617641 B CN109617641 B CN 109617641B
- Authority
- CN
- China
- Prior art keywords
- time
- acquisition unit
- data
- precision
- fpga
- 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.)
- Active
Links
Images
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
- H04J3/0644—External master-clock
-
- 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
- H04J3/0658—Clock or time synchronisation among packet nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/16—Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
- H04J3/1676—Time-division multiplex with pulse-position, pulse-interval, or pulse-width modulation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Electric Clocks (AREA)
Abstract
提供了一种基于秒脉冲的可调精度时间获取方法,其中:PPC处理器接收由GPS接收机发出的UTC时间信息,进行解算后获得与GPS同步的时、分、秒数据;PPC处理器生成精度信息,将解算后获得的时、分、秒及秒以下数据和精度信息传递给FPGA时钟获取单元;FPGA时钟获取单元从本地时钟源接收本地时钟信号并从GPS接收机接收PPS信号,对接收到的时、分、秒及秒以下数据进行校准;FPGA时钟获取单元通过LBC总线将校准后的时、分、秒及秒以下数据发送回PPC处理器,以实现秒以下数据的校准。本方法时间精度配置灵活、获取时间精准度高。
Description
技术领域
本发明涉及航空设备系统时钟同步技术领域,具体涉及一种基于秒脉冲的可调精度时间获取方法。
背景技术
航空机载设备之间的系统时间同步尤为重要,系统时间同步是保证设备间正常通信和协同工作的基础。整个系统中,设备端机可通过接收GPS信号或者B码的方式获取高精度时钟,并以此时钟为基准向其他设备授时。端机以RS422格式输出的UTC时间帧精度虽然可以达到1us甚至更高,但是由于端机内部的串并转换时延、数据线的传输时延以及授时设备的串并转换时延,授时设备获取的UTC时间并不准确。例如端机以115200bps的波特率向授时设备发送UTC时间帧,该帧长度为:帧头4Byte,帧识别码2Byte,帧长度2Byte,时间有效性2Byte,年2Byte,月2Byte,日2Byte,时2Byte,分2Byte,秒2Byte,校验和2Byte,帧尾4Byte,总共28Byte,考虑RS422采用的8b/10b编码技术,该帧的串并转换时延约为2.43ms。因此通过UTC时间帧获得的时间精度仅能达到秒级。
授时设备通常采用UTC时间帧和PPS信号相结合的方发获取高精度时间数据。在FPGA内部利用PPS信号对本机晶振时钟的修正技术,可以在不增加硬件电路的基础上,获得精准度较高的时间信息。但是该技术存在无法对秒以下时钟精度灵活调整的问题。该技术由FPGA设计人员根据授时设备的实际使用需求,设置固定的秒以下时钟精度,在使用过程中该精度无法调整。当授时设备由于需求的变化需要使用更高精度的时间时,需要FPGA设计人员根据新需求重新设计逻辑电路,这给授时设备功能的升级和扩展带来极大的不便。
发明内容
本发明的目的在于提出一种基于秒脉冲的可调精度时间获取方法,该方法可以在不增加额外电路的情况下,实现:(1)PPC处理器可灵活设置FPGA时钟获取单元的最小精度;(2)FPGA时间获取单元将获取时间的误差控制在一个较小的范围之内,消除使用时长增加导致的误差累加现象。
本方法的技术方案如下:
通过本发明的基于秒脉冲的可调精度时间获取方法实现上述目的,其中:PPC处理器接收由GPS接收机发出的UTC时间信息,对UTC时间信息进行解算后获得与GPS同步的时、分、秒数据;PPC处理器生成精度信息,并将解算后获得的时、分、秒及秒以下数据和精度信息传递给FPGA时钟获取单元;FPGA时钟获取单元从本地时钟源接收本地时钟信号并从GPS接收机接收PPS信号,并根据本地时钟信号、PPS信号和精度信息对接收到的时、分、秒及秒以下数据进行校准;FPGA时钟获取单元将校准后的时、分、秒及秒以下数据发送回PPC处理器,以实现秒以下数据的校准。
在上述基于秒脉冲的可调精度时间获取方法中,所述秒以下数据的校准可以包括毫秒、微秒或纳秒数据的校准。
在上述基于秒脉冲的可调精度时间获取方法中,(1)所述UTC时间信息以RS422的格式进行传输;(2)所述UTC时间信息中包含年、月、日、时、分、秒以及微秒级数据。
在上述基于秒脉冲的可调精度时间获取方法中,PPC处理器可以接收UTC时间信息并对其进行解算,从而获取所述UTC时间信息中包含的年、月、日、时、分和秒数据;并且PPC处理器将年、月、日数据以万年历格式保存,将时、分、秒数据和精度信息通过LBC总线传递给FPGA时钟获取单元。
在上述基于秒脉冲的可调精度时间获取方法中,FPGA时钟获取单元可以设置有时初始化配置寄存器、分初始化配置寄存器、秒初始化配置寄存器和精度信息配置寄存器,以用于配置FPGA时钟获取单元的初始化时、分、秒数据和秒以下数据精度。
在上述基于秒脉冲的可调精度时间获取方法中,FPGA时钟获取单元可以设置有时数据寄存器、分数据寄存器、秒数据寄存器和秒以下数据寄存器,以用于向PPC处理器输出精确的时、分、秒和秒以下数据。
在上述基于秒脉冲的可调精度时间获取方法中,FPGA时钟获取单元可以通过本地时钟源判断PPS信号的状态;当FPGA时钟获取单元通判断PPS信号无效时,FPGA时钟获取单元根据本地时钟信号和精度信息进行校准,并将PPS信号无效状态发送回PPC处理器;当FPGA时钟获取单元通判断PPS信号有效时,FPGA时钟获取单元根据本地时钟信号、PPS信号和精度信息进行校准,并将PPS信号有效状态发送回PPC处理器。
在上述基于秒脉冲的可调精度时间获取方法中,FPGA时钟获取单元可以经由如下过程判断PPS信号的状态:FPGA时钟获取单元根据本地时钟源的时钟频率设置阀值;当FPGA时钟获取单元的内部计数器的计数值超过阀值时,判断PPS信号无效;当FPGA时钟获取单元的内部计数器的计数值不超过阀值时,判断PPS信号有效;其中,FPGA时钟获取单元的内部计数器的计数频率为本地时钟源的时钟频率。
附图说明
图1示出本发明方法的架构图;
图2示出本发明方法的流程图。
具体实施方式
本发明的基于秒脉冲的可调精度时间获取方法基本原理是:本地晶振提供时钟信号用于产生高精度时间,PPC处理器控制初始化时间信息和确定时间精度,FPGA使用PPS信号校正时间误差。
图1示出本发明方法的架构图。如图1所示,PPC处理器接收由GPS接收机发出的UTC时间信息,对UTC时间信息进行解算后获得与GPS同步的时、分、秒数据;PPC处理器生成精度信息,并将解算后获得的时、分、秒及秒以下数据和精度信息传递给FPGA时钟获取单元;FPGA时钟获取单元从本地时钟源接收本地时钟信号并从GPS接收机接收PPS信号,并根据本地时钟信号、PPS信号和精度信息对接收到的时、分、秒及秒以下数据进行校准;FPGA时钟获取单元将校准后的时、分、秒及秒以下数据发送回PPC处理器,以实现秒以下数据的校准。
图2示出本发明方法的流程图。如图2所示,本发明的方法通过如下步骤实现:
步骤(1):PPC处理器设置时、分、秒初始值和需要的秒以下时间精度;FPGA根据PPC处理器设置对应参数。步骤(1)结束后行进至步骤(2)。
步骤(2):FPGA判断是否开始计时。如果判断结果为是,则行进到步骤(3);如果判断结果为否,则返回并再次由FPGA判断是否开始计时。
步骤(3):FPGA启动晶振计数器,开始计时。步骤(3)结束后行进至步骤(4)。
步骤(4):判断PPS信号是否到来。如果判断结果为是,则行进至步骤(5);如果判断结果为否,则行进至步骤(6.a)和(6.b)。
步骤(5):秒数加1;晶振计数器1和2清零。步骤(5)结束后返回至步骤(3)。
步骤(6.a):判断晶振计数器2是否等于设置值。如果判断结果为是,则行进至步骤(7.a);如果判断结果为否,则返回并再次判断晶振计数器2是否等于设置值。
步骤(6.b):判断晶振计数器1是否超时。如果判断结果为是,则行进至步骤(7.b);如果判断结果为否,则返回并再次判断晶振计数器1是否超时。
步骤(7.a):计时单位(tick)数加1;晶振计数器2清零。步骤(7.a)结束后返回至步骤(6.a)。
步骤(7.b):秒数加1;晶振计数器1和2清零;PPS状态异常。步骤(7.b)结束后返回至步骤(3)。
如上所述,基于秒脉冲的可调精度时间获取方法包括如下方面:
1)PPC处理器通过LBC总线向FPGA设置秒以下时间精度,以确定可从FPGA获取的tick数的最小精度。
2)FPGA向PPC处理器反馈hour、minute、second和tick四个数据,分别代表FPGA通过PPS修正法计算出的高精度系统同步时钟的时、分、秒和秒以下数据。
3)FPGA内部设置2个计数器timer1和timer2,分别用来判读PPS信号是否丢失和计算秒以下tick值。
4)FPGA时钟获取单元开始工作后,timer1和timer2以本地晶振所产生的时钟信号为节拍开始计时,每1节拍timer1和timer2分别加1;
5)当timer2达到PPC初期器设置的秒以下精度门限时,tick值加1,timer2清零,并重新以晶振时钟信号为节拍开始累加。
6-1)当PPS信号到来时,second值加1,tick值保持不变,timer1和timer2同时清零,并重新以晶振时钟信号为节拍开始累加,FPGA时钟获取单元状态为PPS有效。
6-2)FPGA时钟获取单元开始工作后,初始状态为PPS有效。若timer1的数值等于1s+1ms的总和计数时,例如本地晶振选用66MHz,timer1的数值为66066000时,FPGA时钟获取单元进入PPS丢失状态,second值加1,tick值保持不变,timer1和timer2同时清零,并重新以晶振时钟信号为节拍开始累加。
6-3)FPGA时钟获取单元处于PPS丢失状态,若timer1的数值等于1s的计数时,FPGA时钟获取单元进入PPS丢失状态,second值加1,tick值保持不变,timer1和timer2同时清零,并重新以晶振时钟信号为节拍开始累加。
7)当second等于60时,minute加1,second清零;当minute等于60时,hour加1,second清零;当hour等于24时,hour清零,并产生日满中断。
本方法产生的高精度时间误差源于晶振的频率误差,如果使用常用的频率偏差为75ppm的晶振,所产生的最大时间误差为百万分之七十五;如果选用1ppm的温控晶振,时间误差可低于百万分之一。
在另一个实施例中,本发明的基于秒脉冲的可调精度时间获取方法包括如下步骤:
步骤1,将PPS信号作为中断源,接入PPS处理器中,并设置PPS信号中断响应标志pps_int_flag,初始值为false。
步骤2,在PPS信号到来后,PPC处理器进入PPS中断服务程序,该程序首先判断pps_int_flag值,若该值为true,则不响应该中断,直接退出服务程序;若该值为false,则完成如下工作:
a.接收UTC时间帧数据,并解析数据帧中的年、月、日、时、分、秒信息;
b.将年、月、日信息以万年历信息格式保存;
c.将时、分、秒信息通过LBC总线写入FPGA的hour_init_reg、minute_init_reg和second_init_reg寄存器中;
d.根据晶振频率,计算所设置时间精度的timer2门限值,该门限值计算公示为(时间精度÷1s)×晶振频率,并将该门限值通过LBC总线写入FPGA的tick_unit_reg寄存器;
e.PPC处理器设置pps_int_flag为true,并且控制FPGA时钟获取单元开始工作;
步骤3,PPC处理器周期性地通过LBC总线读取FPGA的hour_reg、minute_reg、second_reg、tick_reg寄存器。获取FPGA时钟获取单元的时、分、秒和秒以下信息。
步骤4,PPC处理器通过LBC总线读取FPGA的pps_status_reg寄存器,获取PPS状态信息,当PPS状态为丢失时,设置pps_int_flag为false。
步骤5,将FPGA日满中断作为中断源,接入PPC处理器中,当中断到来时,万年历中日加1。
Claims (6)
1.一种基于秒脉冲的可调精度时间获取方法,其中:
PPC处理器通过LBC总线向FPGA设置秒以下时间精度,以确定可从FPGA获取的计时单位数的最小精度;PPC处理器接收由GPS接收机发出的UTC时间信息,对UTC时间信息进行解算后获得与GPS同步的时、分、秒数据;
PPC处理器生成精度信息,并将解算后获得的时、分、秒及秒以下数据和精度信息传递给FPGA时钟获取单元;
FPGA时钟获取单元从本地时钟源接收本地时钟信号并从GPS接收机接收PPS信号,并根据本地时钟信号、PPS信号和精度信息对接收到的时、分、秒及秒以下数据进行校准,所述PPS信号包括通过PPS修正法计算出的高精度系统同步时钟的时、分、秒和秒以下数据,所述FPGA时钟获取单元内部设置2个计数器,分别用来判读PPS信号是否丢失和计算秒以下的计时单位数值;
FPGA时钟获取单元将校准后的时、分、秒及秒以下数据发送回PPC处理器,以实现秒以下数据的校准,FPGA时钟获取单元通过本地时钟源判断PPS信号的状态;
当FPGA时钟获取单元通判断PPS信号无效时,FPGA时钟获取单元根据本地时钟信号和精度信息进行校准,并将PPS信号无效状态发送回PPC处理器;
当FPGA时钟获取单元通判断PPS信号有效时,FPGA时钟获取单元根据本地时钟信号、PPS信号和精度信息进行校准,并将PPS信号有效状态发送回PPC处理器,
FPGA时钟获取单元经由如下过程判断PPS信号的状态:
FPGA时钟获取单元根据本地时钟源的时钟频率设置阀值;
当FPGA时钟获取单元的内部计数器的计数值超过阀值时,判断PPS信号无效;
当FPGA时钟获取单元的内部计数器的计数值不超过阀值时,判断PPS信号有效;
其中,FPGA时钟获取单元的内部计数器的计数频率为本地时钟源的时钟频率。
2.根据权利要求1所述的基于秒脉冲的可调精度时间获取方法,其中所述秒以下数据的校准包括毫秒、微秒或纳秒数据的校准。
3.根据权利要求1所述的基于秒脉冲的可调精度时间获取方法,其中,
(1)所述UTC时间信息以RS422的格式进行传输;
(2)所述UTC时间信息中包含年、月、日、时、分、秒以及微秒级数据。
4.根据权利要求3所述的基于秒脉冲的可调精度时间获取方法,其中,PPC处理器接收UTC时间信息并对其进行解算,从而获取所述UTC时间信息中包含的年、月、日、时、分和秒数据;并且
PPC处理器将年、月、日数据以万年历格式保存,将时、分、秒数据和精度信息通过LBC总线传递给FPGA时钟获取单元。
5.根据权利要求4所述的基于秒脉冲的可调精度时间获取方法,其中,FPGA时钟获取单元设置有时初始化配置寄存器、分初始化配置寄存器、秒初始化配置寄存器和精度信息配置寄存器,以用于配置FPGA时钟获取单元的初始化时、分、秒数据和秒以下数据精度。
6.根据权利要求5所述的基于秒脉冲的可调精度时间获取方法,其中,FPGA时钟获取单元设置有时数据寄存器、分数据寄存器、秒数据寄存器和秒以下数据寄存器,以用于向PPC处理器输出精确的时、分、秒和秒以下数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811471449.0A CN109617641B (zh) | 2018-12-04 | 2018-12-04 | 一种基于秒脉冲的可调精度时间获取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811471449.0A CN109617641B (zh) | 2018-12-04 | 2018-12-04 | 一种基于秒脉冲的可调精度时间获取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109617641A CN109617641A (zh) | 2019-04-12 |
CN109617641B true CN109617641B (zh) | 2021-10-26 |
Family
ID=66006953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811471449.0A Active CN109617641B (zh) | 2018-12-04 | 2018-12-04 | 一种基于秒脉冲的可调精度时间获取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109617641B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110782709B (zh) * | 2019-11-04 | 2020-11-03 | 四川九洲空管科技有限责任公司 | 一种民航ads-b地面站系统高精度时钟冗余备份方法 |
CN111130510B (zh) * | 2019-12-13 | 2024-01-30 | 泰斗微电子科技有限公司 | 一种输出秒脉冲信号的方法及装置 |
CN111431650B (zh) * | 2019-12-26 | 2022-11-08 | 武汉光谷互连科技有限公司 | 一种基于fpga的卫星信号实时授时方法及系统 |
CN111614428B (zh) * | 2020-06-02 | 2022-08-30 | 中电科航空电子有限公司 | 一种提高多个时钟间同步精度的方法及装置 |
CN112099339B (zh) * | 2020-07-27 | 2021-08-24 | 季华实验室 | Utc数据接收器及计时器 |
CN113498625A (zh) * | 2020-10-13 | 2021-10-12 | 深圳市大疆创新科技有限公司 | 时钟同步方法和装置、芯片系统、无人机和终端 |
CN112433536A (zh) * | 2020-10-27 | 2021-03-02 | 一飞(海南)科技有限公司 | Pps秒脉冲时钟校准方法、处理器、存储介质及无人机 |
CN112600637B (zh) * | 2020-12-03 | 2023-12-05 | 深圳思凯微电子有限公司 | 无线广播授时校准方法、设备及计算机可读存储介质 |
CN112578662A (zh) * | 2020-12-04 | 2021-03-30 | 中国船舶重工集团公司第七一五研究所 | 一种利用gps秒脉冲同步系统时间实现毫秒计时的方法 |
CN113377060B (zh) * | 2021-08-13 | 2021-11-09 | 成都博宇利华科技有限公司 | 信号采集系统中获取每个采样点采样时刻的方法 |
CN113848568A (zh) * | 2021-09-24 | 2021-12-28 | 上海精密计量测试研究所 | 一种时间校正系统和方法 |
CN115857620B (zh) * | 2023-02-28 | 2023-05-05 | 交通运输部北海航海保障中心天津航标处 | 一种基于fpga的ais时隙计算方法及设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101895383A (zh) * | 2010-07-07 | 2010-11-24 | 中国人民解放军国防科学技术大学 | 时钟外同步系统及其控制流程 |
CN103207851A (zh) * | 2013-03-15 | 2013-07-17 | 北京工业大学 | 串行数据实时采集标时方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100782949B1 (ko) * | 2006-04-25 | 2007-12-07 | 주식회사 이노와이어리스 | 휴대인터넷 계측기에 의한 핸드오버 테스트 시스템 |
CN103746687A (zh) * | 2013-12-17 | 2014-04-23 | 记忆科技(深圳)有限公司 | 自适应精度的定时/计数逻辑系统及定时/计数器 |
CN107577140B (zh) * | 2017-09-14 | 2019-11-05 | 国电南瑞科技股份有限公司 | 一种基于fpga的同步时钟管理模块 |
-
2018
- 2018-12-04 CN CN201811471449.0A patent/CN109617641B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101895383A (zh) * | 2010-07-07 | 2010-11-24 | 中国人民解放军国防科学技术大学 | 时钟外同步系统及其控制流程 |
CN103207851A (zh) * | 2013-03-15 | 2013-07-17 | 北京工业大学 | 串行数据实时采集标时方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109617641A (zh) | 2019-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109617641B (zh) | 一种基于秒脉冲的可调精度时间获取方法 | |
CN102291169B (zh) | 一种卫星星上高精度时间同步方法 | |
CN110492965B (zh) | 一种主从系统内串行报文对时的方法和装置 | |
US7191354B2 (en) | Method for synchronizing a first clock to a second clock, processing unit and synchronization system | |
EP1855168A2 (en) | Method, apparatus and system for GPS time synchronization using cellular signal bursts | |
CN112821974B (zh) | 一种车载ecu高精度时间同步方法及装置 | |
CN102023565B (zh) | 一种输出时间信息的装置及方法 | |
EP2811672A1 (en) | Communication apparatus, communication system, and communication method for time synchronization | |
CN109302255B (zh) | 时间同步控制方法、装置、系统及计算机可读存储介质 | |
CN102004441B (zh) | 自适应晶振频率守时方法 | |
CN111431650B (zh) | 一种基于fpga的卫星信号实时授时方法及系统 | |
CN114567926B (zh) | 一种用于无线分布式测试系统的时钟同步和触发装置 | |
CN110928176B (zh) | 一种支持多种授时技术的多功能授时设备 | |
CN111831056A (zh) | 一种实时时钟校准模块、方法及一种实时时钟芯片 | |
CN112448874B (zh) | 车载通信装置及其时间同步方法 | |
CN117320144A (zh) | 基于无线通信的子母钟时间同步方法和系统 | |
CN1780488B (zh) | 一种程控交换机系统时钟校准装置 | |
CN209949115U (zh) | 一种多时钟源综合网络时统卡 | |
CN108873669B (zh) | 一种计算机同步时钟的utc时间计算方法 | |
JP2020195056A (ja) | 時刻同期プログラム,情報処理装置及び時刻同期方法 | |
CN114124280B (zh) | 一种基于cpt原子钟的多系统间时间同步及对时方法及系统 | |
CN112702105B (zh) | 一种地空通信电台时频校准系统及方法 | |
CN111447028B (zh) | 一种时间同步方法和设备 | |
CN112290935A (zh) | 一种晶体振荡器频率调整方法及电路 | |
CN112506268A (zh) | 多片fpga间时间同步方法、装置、设备及存储介质 |
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 |