CN113132040A - 一种基于fpga+cpu的冗余对时信号自选择和对时方法 - Google Patents
一种基于fpga+cpu的冗余对时信号自选择和对时方法 Download PDFInfo
- Publication number
- CN113132040A CN113132040A CN201911396872.3A CN201911396872A CN113132040A CN 113132040 A CN113132040 A CN 113132040A CN 201911396872 A CN201911396872 A CN 201911396872A CN 113132040 A CN113132040 A CN 113132040A
- Authority
- CN
- China
- Prior art keywords
- time
- fpga
- cpu
- pps
- redundant
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000004891 communication Methods 0.000 claims abstract description 28
- 230000003111 delayed effect Effects 0.000 claims description 11
- 230000000630 rising effect Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 5
- 238000012790 confirmation Methods 0.000 claims description 3
- 230000002452 interceptive effect Effects 0.000 claims description 2
- 230000005540 biological transmission Effects 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000010248 power generation Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/0602—Systems characterised by the synchronising information used
- H04J3/0605—Special codes used as synchronising signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Electric Clocks (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明属于核电站不同控制系统之间的通信技术领域,具体涉及一种基于FPGA+CPU的冗余对时信号自选择和对时方法,包括十个步骤;第一步:系统运行后,FPGA接收485串口传输的双路冗余IRIG‑B码输入;第二步:FPGA按照IRIG‑B码编码格式解析BCD进制的年、百天、天、时、分、秒时间信息;第三步:FPGA根据年信息,把天信息转换成月和日信息,把BCD进制的时间信息转换成十六进制;第四步:FPGA对双路冗余信号进行自选择;第五步:把选择的那路时间或补偿时间信息进行CRC编码;第六步:按照预定义接口,FPGA把十六进制时间信息和CRC校验值写入FPGA与CPU可读写操作的共享RAM区,以及第七到步,从而实现高精度、稳定且零延时切换的冗余对时信号自选择和对时。
Description
技术领域
本发明属于核电站不同控制系统之间的通信技术领域,具体涉及一种基于FPGA+CPU的冗余对时信号自选择和对时方法。
背景技术
随着核电站发电设备和用电量的逐年增多,人们对控制系统的自动化和安全运行要求也越来越多,而通信时间的精确、统一和稳定是核电控制系统自动化和安全运行的重要要素之一。
时间同步技术对于核电控制系统的正常运行和故障诊断起着至关重要的作用,Inter Range Instrumentation Group-B(IRIG-B)码作为国际通用的一种串行时间码,B码是一种串行时间码,帧长为1s,共包含100个码元。它采用脉宽调制方式编码,共有三种宽度的码元——‘0’、‘1’、‘P’,其中‘P’为标志位。B码码元如图1所示,码元的总宽度为10ms,‘0’的高脉宽为2ms,‘1’的高脉宽为5ms,‘P’的高脉宽为8ms。B码的1帧从连续两个‘P’开始,其中第一个标志位为P0,第二个标志位为PR,PR的上升沿是1秒的准秒时刻,即当前帧表示的秒时刻的起点,简称PPS准秒脉冲。
IRIG-B码以其实际优越性能,成为对时设备的标准码型,已广泛应用于电力、航空、通信、气象、军事等行业领域中。当前同步系统中设备不支持IRIG-B码对时,一般采用串行口和1PPS准秒脉冲相结合的对时方式,将时间信息转化成串行时间报文格式与脉冲信号进行对时,例如变电站自动化系统中的违纪继电保护、安全自动保护、微机监控系统等。但对于核电安全级与其他非安全级或安全级控制系统之间的通信数据对时来说,低速率的串行口对时方式严重影响了时间信息的传输,导致时间传输延时、时间精度降低。
同时,目前对于IRIG-B的解码,有两种方案,一种是单片机解码,需配合外围电路来提高解码的精度,电路结构较复杂;另一种是通过FPGA/CPLD来实现,设计灵活,功耗较低,在逻辑代码上优化即可有效提高解码精度。而对冗余对时信号的选择一般采用CPU实现,CPU从对冗余信号的判断到做出切换选择最快也需要2~3s的时间,严重影响了通信数据的对时速率。
因此,针对核电站不同控制系统中对冗余对时信号的选择及对时方法问题,本发明提出一种基于FPGA+CPU架构的冗余对时信号自选择和对时方法,FPGA负责解析时间和冗余选择输出,并能在双路冗余数据都不正确的情况下能自动补偿输出正确的时间和PPS,CPU根据PPS中断给通信数据打对时信息。其冗余对时信号自选择和对时方法是:首先,基于FPGA技术对485串口传输的双路冗余IRIG-B(DC)码进行解码(本发明只针对DC进行解码),按照IRIG-B码的帧格式解析出前60个码元的BCD进制的年、百天、天、时、分、秒时间信息;其次,FPGA根据年信息,确定当前年是否为闰年,进而把百天和天信息转换成月和日信息;接着,FPGA把全部时间信息(年月日时分秒)转换为十六进制,通过冗余对时信号自选择方法,若在一定时间内,双路信号都正确且相等,默认选择第一路,若只有一路数据正确另一路数据不正确或超时,则选择正确那路,若两路数据均不正确,FPGA自动补偿时间为存储的时间信息+1s,并存储更新为当前正确时间信息;把选择的时间信息或补偿时间进行CRC编码后,写入FPGA与CPU预先定义的共享RAM区中;FPGA在解析出完整时间信息(年百天天时分秒)后计时410ms即在下一秒的准秒码元上升沿时刻输出PPS准秒脉冲,若FPGA需要补偿时间,则当1s计数器计到1s时,输出PPS准秒脉冲,1s计数器都需清零重新计数。
接着,CPU根据接收到的PPS准秒脉冲中断,判断当前PPS是否在时间精度偏差允许范围内,若在偏差范围内则把之前存储的时间+2s给通信数据打对时信号,1000ms计数器清零,重新开始计时。同时读取RAM区中的时间信息进行校验,若检验正确用此时间更新其存储时间,若不正确则把存储时间更新为之前的存储时间+1s。若PPS不在范围内,CPU可判断此PPS为干扰信号,1000ms计数器继续计时,等待正确的PPS。通过此方法在某路时间信号出现故障时,FPGA能立即进行零延时切换,切换过程无扰动,也可快速在1E级传输给其他控制系统的通信数据上打对时信息。又因为PPS是FPGA解析出完整时间信息(前60个码元)后计时或1s计数器计时1s时输出,并没有依赖于后面40个B码码元,减少了后续码元带来的时间精度误差。因此,基于FPGA+CPU架构的冗余对时信号自选择和对时方法,FPGA解析选择和自动补偿时间,共享RAM区和PPS的对时方式,能够实现冗余对时信号的自选择及补偿,将1E级的通信数据对时传输到其他1E级或NC级控制系统,具有精度高、零切换、功耗低、性能稳定、传输快、自动补偿等优点,并能实现较强的抗干扰能力。
发明内容
针对以上不足,本发明的主要目的是提供一种基于FPGA+CPU的冗余对时信号自选择和对时方法,高精度、稳定且零延时切换的冗余对时信号自选择和对时。
本发明的技术方案如下:
一种基于FPGA+CPU的冗余对时信号自选择和对时方法,包括十个步骤;
第一步:系统运行后,FPGA接收485串口传输的双路冗余IRIG-B码输入;
第二步:FPGA按照IRIG-B码编码格式解析BCD进制的年、百天、天、时、分、秒时间信息;
第三步:FPGA根据年信息,确定当前年是否为闰年,进而把天信息转换成月和日信息,把BCD进制的时间信息转换成十六进制;
第四步:FPGA对双路冗余信号进行自选择;
第五步:把选择的那路时间或补偿时间信息进行CRC编码;
第六步:按照预定义接口,FPGA把十六进制时间信息和CRC校验值写入FPGA与CPU可读写操作的共享RAM区;
第七步:FPGA在成功解析出a时刻的完整时间信息ta后才开始计时410ms;
第八步:CPU接收到PPSa后,产生中断;
第九步:CPU判断PPSa到来时刻是否在1000ms计数器的偏差范围997ms~1000ms内;
第十步:重复进行以上处理过程,以此实现基于FPGA+CPU架构的冗余对时信号自选择和通信数据对时。
所述第四步:FPGA对双路冗余信号进行自选择,若在一定时间内,若两路信号都正确且相等,默认选择第一路,若只有一路数据正确另一路数据不正确或超时,则选择正确那路,若两路数据均不正确,则FPGA自动补偿为正确时间,即FPGA存储时间加1s,存储时间更新为最新时间。
第七步,FPGA在成功解析出a时刻的完整时间信息ta后才开始计时410ms,即在下一秒的准秒码元PR上升沿时刻输出PPSa,输出冗余选择后的那路PPSa;若FPGA需要自动补偿输出,则在1s计数器计数到1s时输出PPSa,计数器清零重新计数。
所述第九步,CPU判断PPSa到来时刻是否在1000ms计数器的偏差范围997ms~1000ms内,,若在范围内,CPU把ta-1+2s,ta-1为CPU存储的a-1时刻的时间信息,即前1s的时间信息,给通信数据打上对时信号,其1000ms计时器清零并重新开始计时;CPU读取共享RAM区的时间信息ta,对其进行CRC校验,若CRC校验值与读取的CRC值一致,则把CPU存储时间更新为ta;若检验不一致,CPU存储时间更新为ta-1+1s。若PPSa不在偏差范围内,ARM判断PPSa为干扰信号,1000ms计数器继续计时等待PPS到来,因FPGA能自动补偿输出时间信息和PPS准秒脉冲,PPS一定会到来
系统启动运行后,FPGA接收485串口的双路冗余IRIG-B时间信息,根据B码帧格式解析出此时t1时刻a和b路的BCD进制的时间信息分别为ta和tb:A年B天C时D分E秒,通过判断A年是否是闰年,把B天转换成B1月B2日后,把时间信息转换成十六进制t'a和t'b:A'年B1'月B2'日C'时D'分E'秒。
FPGA进行冗余自选择,若t'a=t'b,默认选择a路时间信息,若t'a正确t'b不正确或延时,选择a路时间信息,若t'b正确t'a不正确或延时,选择b路时间信息,若t'a和t'b都不正确或延时,FPGA自动补偿时间为前1s的存储时间即t'0+1s,并对t'1或t'0+1s进行CRC编码,写入共享RAM区;当FPGA解析出ta和tb后计时410ms即在下一秒t2的准秒码元上升沿输出PPS1。
若FPGA双路时间信息都不正确或延时,FPGA自动补偿在1s计数器计数到1s时输出PPS1,1s计数器清零重新计数。
PPS1直接中断CPU,CPU中断后确认PPS1是否在时间精度误差允许范围内,若在则把CPU之前更新的存储时间t'0+2s给通信数据打对时信息,1000ms计时器清零,并读取RAM区时间信息进行CRC校验,若检验正确更新CPU存储时间为t'1,若不正确则更新CPU时间为t'0+1s。
若PPS1不在范围,此PPS1确认为干扰,CPU需继续计时等待正确的PPS到来,避免因ARM的时钟偏差引起误差,导致精度低,时间不可靠。
本发明的有益效果在于:
对于核电安全级与其他非安全级或安全级控制系统之间的通信数据对时和冗余对时信号选择来说,目前多采用CPU冗余切换和串行口通信的对时方式,CPU切换不及时及低速率的串行口对时严重影响了时间信息的传输,导致时间传输延时精度降低,也可能因为采样带来时间不可靠的结果。本发明提出的采用基于FPGA+CPU架构的冗余对时信号自选择和对时方法,FPGA解析双路冗余信号后通过冗余自选择和自动补偿方式,能确保双路冗余信号的零延时切换及时间补偿,与CPU之间采用共享RAM,加快了时间传输,同时PPS是FPGA解析出完整时间信息后计时410ms输出,并不完全依赖于B码信号,减少了时间信息后40个码元带来的精度影响。因此,基于FPGA+CPU架构的冗余对时信号自选择和对时方法,能够实现将IE级解析选择后的时间信号给通信数据打对时信息传输到其他1E级或NC级控制系统,具有零切换、精度高、功耗低、性能稳定、传输快等优点,并能实现较强的抗干扰能力。
附图说明
图1为B码码元;
图2为基于FPGA+CPU架构的冗余对时信号自选择和对时方法的实施步骤;
图3为IRIG-B(DC)码编码格式。
具体实施方式
下面结合附图及具体实施例对本发明作进一步详细说明。
系统运行后,FPGA芯片接收485串口传输的双路冗余IRIG-B码,根据帧格式进行解码转化成十六进制的年月日时分秒的时间信息,通过冗余对时信号自选择方式,对选择的那路或自动补偿的时间信息进行CRC编码后,写入与CPU共享RAM区,同时更新FPGA存储的时间信息,FPGA在解析出完整时间信息后计时410ms即在下一秒的准秒码元上升沿时刻输出PPS准秒脉冲信号,FPGA输出选择那路的PPS,若FPGA需要补偿输出时间,则等到1s计数器计时到1s时输出PPS,PPS作为CPU的中断信号;CPU通过PPS中断,判断此PPS是否满足时间偏差,若满足则把CPU之前的更新时间+2s给通信数据打对时信息,1000ms计时器清零,并读取RAM区时间信息进行CRC解码校验,若CRC校验正确则更新CPU存储的时间信息;若不正确,则把CPU储存的时间更新为之前存储时间+1s,维持通信数据的对时信息。若PPS不满足时间偏差则判断此PPS为干扰信号,ARM继续等待正确的PPS到来。以此实现基于FPGA+CPU架构的冗余对时信号自选择和通信数据对时。
具体地,本发明所提出一种基于FPGA+CPU的冗余对时信号自选择和对时方法,步骤如下:
第一步:系统运行后,FPGA接收485串口传输的双路冗余IRIG-B码输入;
第二步:FPGA按照IRIG-B码编码格式解析BCD进制的年、百天、天、时、分、秒时间信息,其编码格式如图2所示;
第三步:FPGA根据年信息,确定当前年是否为闰年,进而把天信息转换成月和日信息,把BCD进制的时间信息转换成十六进制;
第四步:FPGA对双路冗余信号进行自选择,若在一定时间内,若两路信号都正确且相等,默认选择第一路,若只有一路数据正确另一路数据不正确或超时,则选择正确那路,若两路数据均不正确,则FPGA自动补偿为正确时间,即FPGA存储时间加1s,存储时间更新为最新时间;
第五步:把选择的那路时间或补偿时间信息进行CRC编码;
第六步:按照预定义接口,FPGA把十六进制时间信息和CRC校验值写入FPGA与CPU可读写操作的共享RAM区,共享RAM区数据格式如表1所示;
表1共享RAM区数据格式
地址 | 时间数据 | 备注(十六进制) |
0x00 | 秒 | 0x00~0x3B |
0x01 | 分 | 0x00~0x3B |
0x02 | 时 | 0x00~0x17 |
0x03 | 日 | 0x00~0x1F |
0x04 | 月 | 0x00~0x0C |
0x05 | 年 | 0x00~0x63 |
0x06 | CRC | 对0x00~0x05的时间信息进行CRC校验 |
第七步:FPGA在成功解析出a时刻的完整时间信息ta后才开始计时410ms,即在下一秒的准秒码元PR上升沿时刻输出PPSa,输出冗余选择后的那路PPSa;若FPGA需要自动补偿输出,则在1s计数器计数到1s时输出PPSa,计数器清零重新计数;
第八步:CPU接收到PPSa后,产生中断;
第九步:CPU判断PPSa到来时刻是否在1000ms计数器的偏差范围997ms~1000ms内,若在范围内,CPU把ta-1+2s(ta-1为CPU存储的a-1时刻的时间信息,即前1s的时间信息)给通信数据打上对时信号,其1000ms计时器清零并重新开始计时;CPU读取共享RAM区的时间信息ta,对其进行CRC校验,若CRC校验值与读取的CRC值一致,则把CPU存储时间更新为ta;若检验不一致,CPU存储时间更新为ta-1+1s。若PPSa不在偏差范围内,ARM判断PPSa为干扰信号,1000ms计数器继续计时等待PPS到来,因FPGA能自动补偿输出时间信息和PPS准秒脉冲,PPS一定会到来。
第十步:重复进行以上处理过程,以此实现基于FPGA+CPU架构的冗余对时信号自选择和通信数据对时。
例如:系统启动运行后,FPGA接收485串口的双路冗余IRIG-B时间信息,根据B码帧格式解析出此时t1时刻a和b路的BCD进制的时间信息分别为ta和tb:A年B天C时D分E秒,通过判断A年是否是闰年,把B天转换成B1月B2日后,把时间信息转换成十六进制t'a和t'b:A'年B1'月B2'日C'时D'分E'秒。FPGA进行冗余自选择,若t'a=t'b,默认选择a路时间信息,若t'a正确t'b不正确或延时,选择a路时间信息,若t'b正确t'a不正确或延时,选择b路时间信息,若t'a和t'b都不正确或延时,FPGA自动补偿时间为前1s的存储时间即t'0+1s,并对t'1或t'0+1s进行CRC编码,写入共享RAM区;当FPGA解析出ta和tb后计时410ms即在下一秒t2的准秒码元上升沿输出PPS1。若FPGA双路时间信息都不正确或延时,FPGA自动补偿在1s计数器计数到1s时输出PPS1,1s计数器清零重新计数。
PPS1直接中断CPU,CPU中断后确认PPS1是否在时间精度误差允许范围内,若在则把CPU之前更新的存储时间t'0+2s给通信数据打对时信息,1000ms计时器清零,并读取RAM区时间信息进行CRC校验,若检验正确更新CPU存储时间为t'1,若不正确则更新CPU时间为t'0+1s。若PPS1不在范围,此PPS1确认为干扰,CPU需继续计时等待正确的PPS到来,避免因ARM的时钟偏差引起误差,导致精度低,时间不可靠。
首先,系统启动运行后,FPGA接收485串口的双路冗余IRIG-B时间信息,根据帧格式解析出此时t1时刻两路BCD进制的时间信息ta和tb:19年209天18时51分43秒,因2019年不是闰年,209天信息换成7月28日,进行十六进制转换得到t'1:8’h13年8’h07月8’h1C日8’h12时8’h33分8’h2B秒,若a路和b路转化后的时间都等于t'1,则FPGA选择a路,若只有一路等于t'1,则选择此路,若都不等于t'1,则FPGA进行自动补偿,补偿时间为t'0+1s(t'0:为前1秒t0时刻的十六进制时间,即8’h13年8’h07月8’h1C日8’h12时8’h33分8’h2A秒),同时,更新FPGA的存储时间。通过冗余选择后,把时间信息进行CRC编码,按照表1数据格式依次把t'1或t'0+1s和CRC编码值写入共享RAM区。FPGA只有在完整解析出前60个码元的时间信息t1后,才开始计时410ms即在下一秒的准秒码元上升沿时刻输出PPS1,FPGA输出选择那路的PPS1;若双路前60个码元中都有错误,FPGA的1s计数器继续计数到1s时,输出PPS1,计数器清零;
接着,FPGA输出的PPS1中断CPU,若此刻CPU的1000ms计时器计时为998ms,在时间误差允许范围997ms~1000ms内,则把CPU之间的更新时间t'0+2s(t'0:8’h13年8’h07月8’h1C日8’h12时8’h33分8’h2A秒)给通信数据打上时间信息,其1000ms计数器清零,同时读取RAM区的时间信息t'1和校验值,进行CRC校验,若校验结果与所读CRC一致,则把CPU时间更新为t'1;若不一致,则把CPU时间更新为t'0+1s。若此刻CPU的1000ms计时器计时为650ms,此PPS为干扰信号,CPU继续计时等待正确的PPS到来,避免应CPU的时钟偏差引起误差,导致精度低,时间不可靠。
可以看到,采用本发明提出的基于FPGA+CPU架构的冗余对时信号自选择和对时方法,采用FPGA对冗余信号进行解析自选择及自动补偿,保证了冗余信号的零延时切换,与CPU之间采用共享RAM区交互时间信息,加快了通信的速度,同时1PPS是根据解析出完整时间信息后计时410ms输出,并不完全依赖于B码信号,减少了时间信息后40个码元带来的精度影响。故本发明提出的基于FPGA+CPU架构的冗余对时信号自选择和对时方法,能通过FPGA解析时间进行冗余选择及时间补偿,将1E级的通信数据对时后传输到其他1E级或NC级控制系统,具有零延时切换、精度高、功耗低、性能稳定、传输快等优点,并能实现较强的抗干扰能力。
Claims (9)
1.一种基于FPGA+CPU的冗余对时信号自选择和对时方法,包括十个步骤;
其特征在于:
第一步:系统运行后,FPGA接收485串口传输的双路冗余IRIG-B码输入;
第二步:FPGA按照IRIG-B码编码格式解析BCD进制的年、百天、天、时、分、秒时间信息;
第三步:FPGA根据年信息,确定当前年是否为闰年,进而把天信息转换成月和日信息,把BCD进制的时间信息转换成十六进制;
第四步:FPGA对双路冗余信号进行自选择;
第五步:把选择的那路时间或补偿时间信息进行CRC编码;
第六步:按照预定义接口,FPGA把十六进制时间信息和CRC校验值写入FPGA与CPU可读写操作的共享RAM区;
第七步:FPGA在成功解析出a时刻的完整时间信息ta后才开始计时410ms;
第八步:CPU接收到PPSa后,产生中断;
第九步:CPU判断PPSa到来时刻是否在1000ms计数器的偏差范围997ms~1000ms内;
第十步:重复进行以上处理过程,以此实现基于FPGA+CPU架构的冗余对时信号自选择和通信数据对时。
2.如权利要求1所述的一种基于FPGA+CPU的冗余对时信号自选择和对时方法,其特征在于:所述第四步:FPGA对双路冗余信号进行自选择,若在一定时间内,若两路信号都正确且相等,默认选择第一路,若只有一路数据正确另一路数据不正确或超时,则选择正确那路,若两路数据均不正确,则FPGA自动补偿为正确时间,即FPGA存储时间加1s,存储时间更新为最新时间。
3.如权利要求1所述的一种基于FPGA+CPU的冗余对时信号自选择和对时方法,其特征在于:第七步,FPGA在成功解析出a时刻的完整时间信息ta后才开始计时410ms,即在下一秒的准秒码元PR上升沿时刻输出PPSa,输出冗余选择后的那路PPSa;若FPGA需要自动补偿输出,则在1s计数器计数到1s时输出PPSa,计数器清零重新计数。
4.如权利要求1所述的一种基于FPGA+CPU的冗余对时信号自选择和对时方法,其特征在于:所述第九步,CPU判断PPSa到来时刻是否在1000ms计数器的偏差范围997ms~1000ms内,,若在范围内,CPU把ta-1+2s,ta-1为CPU存储的a-1时刻的时间信息,即前1s的时间信息,给通信数据打上对时信号,其1000ms计时器清零并重新开始计时;CPU读取共享RAM区的时间信息ta,对其进行CRC校验,若CRC校验值与读取的CRC值一致,则把CPU存储时间更新为ta;若检验不一致,CPU存储时间更新为ta-1+1s。若PPSa不在偏差范围内,ARM判断PPSa为干扰信号,1000ms计数器继续计时等待PPS到来,因FPGA能自动补偿输出时间信息和PPS准秒脉冲,PPS一定会到来。
5.如权利要求1所述的一种基于FPGA+CPU的冗余对时信号自选择和对时方法,其特征在于:系统启动运行后,FPGA接收485串口的双路冗余IRIG-B时间信息,根据B码帧格式解析出此时t1时刻a和b路的BCD进制的时间信息分别为ta和tb:A年B天C时D分E秒,通过判断A年是否是闰年,把B天转换成B1月B2日后,把时间信息转换成十六进制t'a和t'b:A'年B1'月B2'日C'时D'分E'秒。
6.如权利要求5所述的一种基于FPGA+CPU的冗余对时信号自选择和对时方法,其特征在于:FPGA进行冗余自选择,若t'a=t'b,默认选择a路时间信息,若t'a正确t'b不正确或延时,选择a路时间信息,若t'b正确t'a不正确或延时,选择b路时间信息,若t'a和t'b都不正确或延时,FPGA自动补偿时间为前1s的存储时间即t'0+1s,并对t1'或t'0+1s进行CRC编码,写入共享RAM区;当FPGA解析出ta和tb后计时410ms即在下一秒t2的准秒码元上升沿输出PPS1。
7.如权利要求5所述的一种基于FPGA+CPU的冗余对时信号自选择和对时方法,其特征在于:若FPGA双路时间信息都不正确或延时,FPGA自动补偿在1s计数器计数到1s时输出PPS1,1s计数器清零重新计数。
8.如权利要求7所述的一种基于FPGA+CPU的冗余对时信号自选择和对时方法,其特征在于:PPS1直接中断CPU,CPU中断后确认PPS1是否在时间精度误差允许范围内,若在则把CPU之前更新的存储时间t'0+2s给通信数据打对时信息,1000ms计时器清零,并读取RAM区时间信息进行CRC校验,若检验正确更新CPU存储时间为t1',若不正确则更新CPU时间为t'0+1s。
9.如权利要求7所述的一种基于FPGA+CPU的冗余对时信号自选择和对时方法,其特征在于:若PPS1不在范围,此PPS1确认为干扰,CPU需继续计时等待正确的PPS到来,避免因ARM的时钟偏差引起误差,导致精度低,时间不可靠。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911396872.3A CN113132040A (zh) | 2019-12-30 | 2019-12-30 | 一种基于fpga+cpu的冗余对时信号自选择和对时方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911396872.3A CN113132040A (zh) | 2019-12-30 | 2019-12-30 | 一种基于fpga+cpu的冗余对时信号自选择和对时方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113132040A true CN113132040A (zh) | 2021-07-16 |
Family
ID=76767976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911396872.3A Pending CN113132040A (zh) | 2019-12-30 | 2019-12-30 | 一种基于fpga+cpu的冗余对时信号自选择和对时方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113132040A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113805643A (zh) * | 2021-10-18 | 2021-12-17 | 天津津航计算技术研究所 | 一种全国产化的多总线多冗余的b码对时装置 |
CN116318167A (zh) * | 2023-02-03 | 2023-06-23 | 国网四川省电力公司营销服务中心 | 双路信号热备输入的直流b码转脉冲信号的装置和方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101738931A (zh) * | 2009-12-24 | 2010-06-16 | 华北电力大学 | 一种irig-b码的对时装置及其对时方法 |
CN202111712U (zh) * | 2010-12-17 | 2012-01-11 | 南京融瑞科技有限公司 | 对时系统中采用irig-b格式时间码的双机冗余系统 |
US20150093122A1 (en) * | 2013-08-07 | 2015-04-02 | Shanghai Jiao Tong University | Encoding and decoding methods for high-precision time transfer and encoding and decoding devices therefor |
CN204290985U (zh) * | 2014-11-06 | 2015-04-22 | 烟台持久钟表有限公司 | 一种新型时钟同步系统 |
CN109828447A (zh) * | 2018-12-26 | 2019-05-31 | 中核控制系统工程有限公司 | 一种基于fpga+arm架构的网关通信数据对时方法 |
-
2019
- 2019-12-30 CN CN201911396872.3A patent/CN113132040A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101738931A (zh) * | 2009-12-24 | 2010-06-16 | 华北电力大学 | 一种irig-b码的对时装置及其对时方法 |
CN202111712U (zh) * | 2010-12-17 | 2012-01-11 | 南京融瑞科技有限公司 | 对时系统中采用irig-b格式时间码的双机冗余系统 |
US20150093122A1 (en) * | 2013-08-07 | 2015-04-02 | Shanghai Jiao Tong University | Encoding and decoding methods for high-precision time transfer and encoding and decoding devices therefor |
CN204290985U (zh) * | 2014-11-06 | 2015-04-22 | 烟台持久钟表有限公司 | 一种新型时钟同步系统 |
CN109828447A (zh) * | 2018-12-26 | 2019-05-31 | 中核控制系统工程有限公司 | 一种基于fpga+arm架构的网关通信数据对时方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113805643A (zh) * | 2021-10-18 | 2021-12-17 | 天津津航计算技术研究所 | 一种全国产化的多总线多冗余的b码对时装置 |
CN116318167A (zh) * | 2023-02-03 | 2023-06-23 | 国网四川省电力公司营销服务中心 | 双路信号热备输入的直流b码转脉冲信号的装置和方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109828447B (zh) | 一种基于fpga+arm架构的网关通信数据对时方法 | |
US7617408B2 (en) | System and method for providing accurate time generation in a computing device of a power system | |
CN113132040A (zh) | 一种基于fpga+cpu的冗余对时信号自选择和对时方法 | |
CN202008583U (zh) | 一种同步相量测量装置时钟源 | |
CN102156404A (zh) | 自适应识别gps输入信号的对时方法 | |
MX2012011006A (es) | Aparato, sistema y metodo para crear uno o mas canales de comunicaciones de baja velocidad utilizando un canal de comunicaciones en tiempo real. | |
CN110928176B (zh) | 一种支持多种授时技术的多功能授时设备 | |
CN102243475A (zh) | 基于北斗的dcf77时间码发生方法 | |
CN202217149U (zh) | 高精度电力时间同步装置 | |
CN111208539A (zh) | 一种高精度的gnss模拟器时间同步方法 | |
CN114138055B (zh) | 一种直流b码转换为电力系统串口时间报文的方法及其装置 | |
CN112671491B (zh) | 一种直流b码传输延时补偿方法及装置 | |
CN202486606U (zh) | 智能电网中的自适应多信号源对时设备及报文分析系统 | |
CN111193514A (zh) | 一种高同步精度irig-b编码器 | |
CN102944992B (zh) | 高压线路避雷器在线监测中的实时时钟校时装置及其方法 | |
CN201497873U (zh) | 基于cpci总线的irig-b信号解码校时卡装置 | |
CN101515187B (zh) | 基于cpci总线的irig-b信号解码校时卡装置 | |
CN212486517U (zh) | 一种irig时间码信号传输转置 | |
US20050116856A1 (en) | Radio-controlled clock and method for acquiring time information from a time signal with reduced evaluation overhead | |
CN203708224U (zh) | 一种多用途串行时间码解码器 | |
CN113794498B (zh) | 深空探测两器多时序约束的串行通信系统、方法及介质 | |
CN101937254A (zh) | 实现irig-b信号解码校时的方法 | |
CN113791533B (zh) | 基于fpga的irig-b直流码解码及对时自动切换方法 | |
JPS61155789A (ja) | 無線制御式時計 | |
CN109861779B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210716 |
|
RJ01 | Rejection of invention patent application after publication |