一种IRIG-B码的解码设备及方法与流程

文档序号:19123778发布日期:2019-11-13 01:55阅读:371来源:国知局
一种IRIG-B码的解码设备及方法与流程

本发明涉及时钟信号处理领域,尤其涉及一种irig-b码的解码设备及一种irig-b码的解码方法。



背景技术:

irig(inter-rangeinstrumentationgroup)是美国靶场司令部委员会的下属机构,称为“靶场时间组”。irig时间标准有两大类:

(1)一类是并行时间码格式,这类码由于是并行格式,传输距离较近,且是二进制,因此远不如串行格式广泛;

(2)另一类是串行时间码,共有六种格式,即a、b、d、e、g、h。它们的主要差别是时间码的帧速率不同。b码的主要特点是时帧速率为1帧/s;携带信息量大,使用最多。irig-b(dc)时间码格式是常规的公知技术,直流b码是每秒一帧的时间串码,每一帧内包含100个宽度为10ms的码元,码元又因为高低电平持续时长的不同,能代表不同的意义。

码元的″准时″参考点是其脉冲前沿;

如图1所示,高2ms低8ms的码元,即脉宽2ms代表二进制的“0”;高5ms低5ms,即脉宽5ms代表二进制的“1”;高8ms低2ms,即脉宽8ms代表“p”,又叫“p码”。

“p码”又叫位置识别标志,如图2所示,一帧时间串码中包含秒、分、时、天等多种信息。每10个码元设有一个位置识别标志:pr为帧参考标志,代表整个帧的开始,然后依次为p1,p2,p3,…,p9,p0。在b码时间格式中含有天、时、分、秒,时序为秒-分-时-天,所占信息位为秒7位、分7位、时6位、天10位,其位置在p0~p5之间。p6~p0包含其他控制信息。

一帧时间串码中,出现连续两个p码,即前一帧的p0+本帧的pr,组成连续两个p码,代表新的一帧的开始,在本帧数据中不会再出现连续两个p码的情况,故可以通过检测是否连续出现两个p码来判断一帧时间码的开始。

一个时间格式帧从帧参考标志开始,连续两个8ms宽脉冲表明秒的开始,第一个8ms宽的脉冲实际为上一帧的p0,第二个8ms宽脉冲是本帧的帧参考标志,即从第二个8ms开始对码元进行编码,分别为第00,01,02,…,99个码元,其中:

第00码元为帧参考标志;

“秒”信息:第01,02,03,04,06,07,08码元;第05码元为索引标志,脉宽为2ms。

第09码元为位置识别标志;

“分”信息:第10,11,12,13,15,16,17码元;第14码元为索引标志,脉宽为2ms。

第19码元为位置识别标志;

“时”信息:第20,21,22,23,25,26,27码元;第24码元为索引标志,脉宽为2ms。

第29码元为位置识别标志;

时、分、秒均用bcd码表示,低位在前,高位在后;个位在前,十位在后。

由此可见要对irig-b信号进行解码并识别必须进行脉宽检测,在目前的技术方案中一般都是检测上升沿,检测脉宽区分码元类别,在确定帧参考标志后,同步出pps信号,抗干扰能力弱,一旦时间串码中存在干扰,很容易导致解码错误,另外从帧参考标志处生成pps信号,存在同步精度低等问题。



技术实现要素:

本发明所要解决的技术问题是:提供一种高抗干扰、高精度同步的irig-b码的解码设备。

为解决上述技术问题,本发明所采用的技术方案是:

一种irig-b码的解码设备,包括:主控制模块、计数器1模块、计数器2模块、计数器3模块、计数器4模块;所述计数器1模块、计数器2模块、计数器3模块、计数器4模块分别与所述主控制模块电连接;所述计数器3模块还与所述计数器2模块和计数器4模块电连接;所述计数器1模块设有溢出标志。

所述主控制模块用于检测irig-b码的上升沿和下降沿,并向计数器1模块、计数器2模块、计数器4模块发送开始计数及停止计数指令;读取、记录计数器1模块、计数器2模块、计数器3模块、计数器4模块的计数数值并进行分析处理;判断码元类别,检验解码数据的合法性,并输出时间数据。

当检测到上升沿时,向计数器1模块发送开始计数信号;

当检测到下降沿或者计数器1的溢出标志时,向计数器1模块发送停止计数信号;

读取计数器1模块的计数值n1并判断码元类别;

当检测连续两个p码时,向计数器2模块和计数器4模块发出开始计数信号;

读取计数器3模块的计数值n3并判断是否在允许的误差范围内,若在允许的误差范围内则将计数器3模块的计数值n3设为计数器4模块的最大计数值n4max,否则将数据丢弃。

由于计数器1模块、计数器2模块、计数器3模块、计数器4模块、是以固定频率计数,故计数值可以换算成时间值,为了简洁,在描述中会直接以计数值来表示时间。

所述计数器1模块用于记录码元高电平的持续时长;在收到所述主控制模块发来的开始计数信号后,从零开始、以频率a计数,当收到主控制模块发来的停止计数指令时停止计数;获得计数器1模块的计数值n1,当计数达到设定阈值时标记所述溢出标志,所述频率a大于100mhz,比如160mhz。

计数器1模块的工作流程如下:

步骤1:当收到来自主控制模块的开始计数信号后,以频率a开始计数,同时复位溢出标志。

步骤2:当收到来自主控制模块的停止计数信号时停止计数,获得计数器1模块的计数值n1。

步骤3:如果计数到设定阈值则置位溢出标志。

设定阈值大于8ms,比如可以为8.5ms,因为正确的irig-b码中仅包含8ms,5ms,2ms三种脉宽,故码元高电平不可能超过8.5毫秒,该溢出标志可有效的避免误码的产生。

所述计数器2模块用于输出比准时沿延后t的同步信号;在收到所述主控制模块发来的开始计数信号后,以计数器1的当前计数值为初值、以频率a计数,计数到t时,停止计数,并输出同步信号。

计数器2模块的工作流程如下:

步骤1:当收到来自主控制模块的开始计数信号后,以计数器1的当前计数值为初值、以频率a开始计数。

步骤2:当计数到t时停止计数,输出准时沿延后t的同步信号。

其中t大于8.5ms,小于10.5ms,优选10ms。

所述计数器3模块用于以本地晶振测量相邻两个所述同步信号之间的时间差;当检测到同步信号时,所述计数器3模块以频率a计数开始,当检测到下一个同步信号时停止计数,获得计数器3模块的计数值n3。

计数器3模块工作的流程如下:

步骤1:检测到准时沿延后t的同步信号,以频率a从零开始计数。

步骤2:检测到下一个准时沿延后t的同步信号,停止计数,获得计数器3模块的计数值n3,如果n3满足误差要求,比如大于999.5毫秒且小于1000.5毫秒则锁存该计数值,将n3设为计数器4模块的最大计数值n4max,产生测量计数结束信号,否则丢弃不用。±0.5ms的误差范围,充分考虑了晶振制作工艺导致的偏差,又将偶然因素引起的脉冲干扰排除在外。该限幅滤波法有效的克服因偶然因素引起的脉冲干扰。

所述计数器4模块用于输出与准时沿同步的pps(pulsepersecond,每秒一脉冲)信号;当检测到计数器3模块测量结束信号,同时收到所述主控制模块发来的开始计数信号后,以计数器1模块的当前计数值为初始值、以频率a开始计数,当计数到计数器4模块的最大计数值n4max时计数归零,输出与准时沿同步的pps信号。

步骤1:检测到计数器3模块测量计数结束信号

步骤2:当收到来自主控制模块的开始计数信号,以计数器1的当前计数值为初值、以频率a开始计数,实现与准时沿信号的相位同步调整。

步骤3:计数到计数器4模块的最大计数值n4max时清零,输出与准时沿同步的pps信号,实现与与准时沿信号的频率同步调整。

步骤4:重复步骤2,步骤3。

由此,本发明的irig-b码的解码设备,通过采用100mhz以上本地晶振测量一帧数据的时长,实现了pps与irig-b码的高精度同步。

计数器1模块设置有高电平时长阈值,计数器3模块设置有允许误差范围,实现了解码过程的高可靠性和高抗干扰性。

本发明还公开了一种irig-b码的解码方法,基于上述irig-b码的解码设备,包括以下步骤:

s1、进行码元解析;

s2、提取时间信息;

s3、输出pps信号;

所述s1进行码元解析,包括以下步骤:

s11、由主控制模块检测信号的上升沿;检测到上升沿后,主控制模块向计数器1模块发送开始计数信号;

s12、计数器1模块以频率a开始计数,若产生计数溢出,则设置溢出标志;

s13、主控制模块检测信号的下降沿和计数器1模块的溢出标志;向计数器1模块发出停止计数信号;

s14、计数器1模块收到主控制模块发来的停止计数信号后停止计数;

s15、若计数器模块1因为溢出而停止,则直接跳回步骤s11,否则主控制模块采集计数器1模块的计数值n1,判断当前码元是p码,0码或者是1码;

脉宽8ms为p码,脉宽2ms为0码,脉宽5ms为1码。

所述步骤s2提取时间信息,包括以下步骤:

s21、确定帧起始位置或p码位置;

若连续两个码元均为p码,则第二个p码为pr-帧参考标志;否则为帧数据中的位置识别标识p1-p0中的一个;

s22、根据irig-b码规则,依次提取秒、分、时、天等信息,完成p1-p9共9段数据的解码提取;

s23、检验解码数据的合法性,若合法,输出时间数据,否则丢弃。

所述步骤s3输出pps信号,包括以下步骤:

s31、确认帧起始位置,主控制模块向计数器2模块、计数器4模块发出开始计数信号;计数器4模块在未收到计数器3模块的计数结束信号时不启动计数;

若连续两个码元均为p码,则第二个p码为pr-帧参考标志,随即向计数器2模块发出开始计数信号;

s32、以本地晶振测量的一帧数据的持续时长;

s321、计数器2模块以计数器1模块的当前计数值为初始值、以频率a持续计数到t时,停止计数并发出同步信号;

s322、计数器3模块检测到计数器2模块发出的同步信号,以频率a从零开始计数;

s323、重复步骤s31内容及步骤s321内容,计数器3模块在计数过程中检测到计数器2模块发出的同步信号,停止计数,产生测量计数结束信号;获得以本地晶振测量的一帧数据的持续时长;

s33、确认步骤s32中获得的计数器3模块计数值n3是否满足误差要求,若满足,将其作为计数器4模块的最大计数值n4max;否则丢弃数据,返回步骤s31;

s34、生成pps信号;计数器4模块检测到计数器3模块的停止计数信号,同时收到主控制模块发来的开始计数信号后,以计数器1模块的当前计数值为初始值、以频率a开始计数,计数到步骤s33中获得的计数器4模块的最大计数值n4max时,计数值清零,输出与准时沿同步的pps信号;

s35、重复步骤s34,持续向外输出与准时沿同步的pps信号。

与现有技术相比,本发明具有如下技术效果:

通过采用本地晶振测量一帧数据的时长,实现了解码出的pps信号与irig-b码的高精度同步。

计数器1模块设置有高电平时长阈值,计数器3模块设置有允许误差范围,实现了解码过程的高可靠性和高抗干扰性。

附图说明

图1为irig-b码的三种码元示意图;

图2为一帧irig-b码的示意图;

图3为本发明的irig-b码的解码设备的功能框图;

图4为本发明的irig-b码的解码方法解码过程中各计数器状态示意图;附图中各标号所代表的组件名称如下:

1、计数器1模块;

2、计数器2模块;

3、计数器3模块;

4、计数器4模块;

5、主控制模块。

具体实施方式

以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。

请参照图3所示,其为本发明的一种irig-b码的解码设备的功能框图。

一种irig-b码的解码设备,包括:主控制模块5、计数器1模块1、计数器2模块2、计数器3模块3、计数器4模块4;所述计数器1模块、计数器2模块、计数器3模块、计数器4模块分别与所述主控制模块电连接;所述计数器3模块还与所述计数器2模块和计数器4模块电连接;所述计数器1模块设有溢出标志。

所述主控制模块用于检测irig-b码的上升沿和下降沿,并向计数器1模块、计数器2模块、计数器4模块发送开始计数及停止计数指令;读取、记录计数器1模块、计数器2模块、计数器3模块、计数器4模块的计数数值并进行分析处理;判断码元类别,检验解码数据的合法性,并输出时间数据。

当检测到上升沿时,向计数器1模块发送开始计数信号;

当检测到下降沿或者计数器1的溢出标志时,向计数器1模块发送停止计数信号;

读取计数器1模块的计数值n1并判断码元类别;

当检测连续两个p码时,向计数器2模块和计数器4模块发出开始计数信号;

读取计数器3模块的计数值n3并判断是否在允许的误差范围内,若在允许的误差范围内则将计数器3模块的计数值n3设为计数器4模块的最大计数值n4max,否则将数据丢弃。

由于计数器1模块、计数器2模块、计数器3模块、计数器4模块、是以固定频率计数,故计数值可以换算成时间值,为了简洁,在描述中会直接以计数值来表示时间。

请参照图4所示,图4中,向上的箭头表示计数器开始计数,向下的箭头表示计数器停止计数。

所述计数器1模块用于记录码元高电平的持续时长;在收到所述主控制模块发来的开始计数信号后,从零开始、以160mhz的频率开始计数,当收到主控制模块发来的停止计数指令时停止计数;获得计数器1模块的计数值n1,当计数达到设定阈值8.5ms时标记所述溢出标志。

计数器1模块的工作流程如下:

步骤1:当收到来自主控制模块的开始计数信号后,以160mhz的频率开始计数,同时复位溢出标志。

步骤2:当收到来自主控制模块的停止计数信号时停止计数,获得计数器1模块的计数值n1。

步骤3:如果计数到设定阈值则置位溢出标志。

设定阈值为8.5ms,因为正确的irig-b码中仅包含8ms,5ms,2ms三种脉宽,故码元高电平不可能超过8.5毫秒,该溢出标志可有效的避免误码的产生。

如图4所示,计数器1模块在irig-b时间串码中的每一个上升沿开始新一轮的计数,在时间串码的每一个下降沿,结束计数。

所述计数器2模块用于输出比准时沿延后10ms的同步信号;在收到所述主控制模块发来的开始计数信号后,以计数器1的当前计数值为初值、以160mhz的频率计数,计数到10ms时,停止计数,并输出同步信号。

计数器2模块的工作流程如下:

步骤1:当收到来自主控制模块的开始计数信号后,以计数器1的当前计数值为初值、以160mhz的频率开始计数。

步骤2:当计数到10毫秒时停止计数,输出准时沿延后10毫秒的同步信号。

所述计数器3模块用于以本地晶振测量相邻两个所述同步信号之间的时间差;当检测到同步信号时,所述计数器3模块以160mhz的频率开始计数,当检测到下一个同步信号时停止计数,获得计数器3模块的计数值n3。

如图4所示,计数器2模块在pr下降沿开始计数,在延后准时沿10ms位置结束计数,并发出一个同步信号,随后直到下一帧时间串码的准时沿后10ms位置再发出一个同步信号,即每秒在准时沿后10ms位置发出一个同步信号。

计数器3模块工作的流程如下:

步骤1:检测到准时沿延后10ms的同步信号,以160mhz的频率从零开始计数。

步骤2:检测到下一个准时沿延后10ms的同步信号,停止计数,获得计数器3模块的计数值n3,如果n3满足大于999.5毫秒且小于1000.5毫秒的允许误差,则锁存该计数值,将n3设为计数器4模块的最大计数值n4max,产生测量计数结束信号,否则丢弃不用。±0.5ms的误差范围,充分考虑了晶振制作工艺导致的偏差,又将偶然因素引起的脉冲干扰排除在外。该限幅滤波法有效的克服因偶然因素引起的脉冲干扰。如图4所示,计数器3模块在计数器2模块中的在前同步信号的上升沿开始计数,在计数器2模块中下一个同步信号的上升沿结束计数,获得计数器3模块的计数值n3。

所述计数器4模块用于输出与准时沿同步的pps(pulsepersecond,每秒一脉冲)信号;当检测到计数器3模块测量结束信号,同时收到所述主控制模块发来的开始计数信号后,以计数器1模块的当前计数值为初始值、以160mhz的频率开始计数,当计数到计数器4模块的最大计数值n4max时计数归零,输出与准时沿同步的pps信号。

步骤1:检测到计数器3模块测量计数结束信号

步骤2:当收到来自主控制模块的开始计数信号,以计数器1的当前计数值为初值、以160mhz的频率开始计数,实现与准时沿信号的相位同步调整。

步骤3:计数到计数器4模块的最大计数值n4max时清零,输出与准时沿同步的pps信号,实现与与准时沿信号的频率同步调整。

步骤4:重复步骤2,步骤3。持续生成pps信号。

如图4所示,计数器4模块在pr下降沿开始计数,在下一帧时间串码的pr上升沿结束计数,并生成pps信号,由此计数器4模块结束计数位置距离本帧时间串码的准时沿的时长为n4max,而这个n4max取自n3,由此实现了pps信号与irig-b码的准时沿高精度同步。

由此本发明的用于irig-b码的解码设备,通过采用本地晶振测量一帧数据的时长,实现了解码出的pps信号与irig-b码的高精度同步。

计数器1模块设置有高电平时长阈值,计数器3模块设置有允许误差范围,实现了解码过程的高可靠性和高抗干扰性。

本发明还公开了一种irig-b码的解码方法,基于上述irig-b码的解码设备,包括以下步骤:

s1、进行码元解析;

s2、提取时间信息;

s3、输出pps信号;

所述s1进行码元解析,包括以下步骤:

s11、由主控制模块检测信号的上升沿;检测到上升沿后,主控制模块向计数器1模块发送开始计数信号;

s12、计数器1模块以160mhz的频率开始计数,若产生计数溢出,则设置溢出标志。

s13、主控制模块检测信号的下降沿和计数器1模块的溢出标志;向计数器1模块发出停止计数信号。

s14、计数器1模块收到主控制模块发来的停止计数信号后停止计数。

s15、若计数器模块1因为溢出而停止,则直接跳回步骤s11,否则主控制模块采集计数器1模块的计数值n1,判断当前码元是p码,0码或者是1码;

脉宽8ms为p码,脉宽2ms为0码,脉宽5ms为1码。

所述步骤s2提取时间信息,包括以下步骤:

s21、确定帧起始位置或p码位置;

若连续两个码元均为p码,则第二个p码为pr-帧参考标志;否则为帧数据中的位置识别标识p1-p0中的一个。

s22、根据irig-b码规则,依次提取秒、分、时、天等信息,完成p1-p9共9段数据的解码提取。

s23、检验解码数据的合法性,若合法,输出时间数据,否则丢弃。

所述步骤s3输出pps信号,包括以下步骤:

s31、确认帧起始位置,主控制模块向计数器2模块、计数器4模块发出开始计数信号;计数器4模块在未收到计数器3模块的计数结束信号时不启动计数。

若连续两个码元均为p码,则第二个p码为pr-帧参考标志,随即向计数器2模块发出开始计数信号;

s32、以本地晶振测量的一帧数据的持续时长;

s321、计数器2模块以计数器1模块的当前计数值为初始值、以160mhz的频率持续计数到10ms时,停止计数并发出同步信号;

s322、计数器3模块检测到计数器2模块发出的同步信号,以160mhz的频率从零开始计数;

s323、重复步骤s31内容及步骤s321内容,计数器3模块在计数过程中检测到计数器2模块发出的同步信号,停止计数;获得以本地晶振测量的一帧数据的持续时长。

s33、确认步骤s32中获得的计数器3模块计数值n3是否满足误差要求,若满足,将其作为计数器4模块的最大计数值n4max;否则丢弃数据,返回步骤s31;

s34、生成pps信号;计数器4模块检测到计数器3模块的停止计数信号,同时收到主控制模块发来的开始计数信号后,以计数器1模块的当前计数值为初始值、以160mhz的频率开始计数,计数到步骤s33中获得的计数器4模块的最大计数值n4max时,计数值清零,输出与准时沿同步的pps信号。

s35、重复步骤s34,持续向外输出与准时沿同步的pps信号。

与现有技术相比,本发明具有如下技术效果:

通过采用本地晶振测量一帧数据的时长,实现了解码出的pps信号与irig-b码的高精度同步。

计数器1模块设置有高电平时长阈值,计数器3模块设置有允许误差范围,实现了解码过程的高可靠性和高抗干扰性。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1