卫星导航用CRC纠错方法及系统技术方案

技术编号:27824633 阅读:12 留言:0更新日期:2021-03-30 11:01
本发明专利技术提供卫星导航用CRC纠错方法及系统,以纠正信息比特中的比特错误。上述方法包括:获取接收序列;接收序列是发送方发出的CRC码经信道传输后得到的;使用预设的生成多项式,计算接收序列的校正子向量;其中,若校正子向量为全零序列表征CRC校验通过,否则,表征CRC校验失败;若CRC校验失败,使用预置的校正子表和校正子向量,尝试定位接收序列中发生错误的位置;对定位出的发生错误的位置上的比特值进行纠错。在本发明专利技术实施例中,在CRC校验失败后,并不是直接丢弃接收序列,而是尝试定位接收序列中发生错误的位置并进行纠错,进而提高了数据接收处理效率。了数据接收处理效率。了数据接收处理效率。

【技术实现步骤摘要】
卫星导航用CRC纠错方法及系统


[0001]本专利技术涉及信息安全领域,特别涉及卫星导航用CRC纠错方法及系统。

技术介绍

[0002]在通信系统中,由于各种原因可能使信息在传输或接收过程中发生错误。为了能在接收端判断所接收的数据的正确性,通常发送时在数据末尾加入校验位。循环冗余校验(Cyclic Redundancy Check,CRC)编译码简单,检错能力强,抗干扰性能优异,所以在很多通信协议和数字用户线路技术中得到广泛应用,在下一代卫星导航系统中,CRC作为导航电文的检错方案,以提高电文正确率。
[0003]CRC校验的基本思路是利用线性码原理,对需要进行传输的原始k位二进制数据按照一定的规则处理,产生一个p位的CRC校验序列并附加在原始数据后面,组成数据帧发送出去。在接收端以同样的规则进行CRC校验,从而判断接收信息是否正确。
[0004]然而专利技术人发现,若CRC校验成功,接收端会将数据帧中的信息比特用于后续处理;若CRC校验失败,接收端通常丢弃相应的数据帧,并准备重新接收。
[0005]在接收信号质量较差的环境,大量数据帧会出现校验失败。若CRC校验失败直接丢弃数据帧,会影响数据接收处理效率,从而影响导航定位性能。

技术实现思路

[0006]有鉴于此,本专利技术提供卫星导航用CRC纠错方法及系统,以纠正信息比特中的比特错误,提高数据接收处理效率,降低导航电文的误码率。
[0007]为了实现上述专利技术目的,本专利技术提供以下技术方案:
[0008]一种卫星导航用CRC纠错方法,包括:
[0009]获取接收序列;所述接收序列长度为n比特;所述接收序列是发送方发出的n比特CRC码经信道传输后得到的;所述n为正整数;
[0010]使用预设的生成多项式,计算所述接收序列的校正子向量;其中,若所述校正子向量为全零序列表征CRC校验通过,否则,表征CRC校验失败;
[0011]若所述CRC校验失败,使用预置的校正子表和所述校正子向量,尝试定位所述接收序列中发生错误的位置;所述校正子表包括n个长度为p的向量,其中的第i个向量为与所述接收序列第i比特对应的校正子;
[0012]对定位出的发生错误的位置上的比特值进行纠错。
[0013]可选的,所述第i向量表示为T(i);所述使用预置的校正子表和所述校正子向量,尝试定位所述接收序列中发生错误的位置包括:对于第i个位置,将所述校正子向量与T(i)进行模2运算,得到中间向量;当所述中间向量为全零序列,或者,在所述校正子表中搜索到与所述中间向量相匹配的向量时,确定所述第i个位置为发生错误的位置。
[0014]可选的,所述校正子表中的第i个向量的生成过程包括:计算x^i mod g(x),得到第i个向量对应的多项式S(i);其中,g(x)为所述生成多项式;将多项式S(i)的系数作为T
(i)。
[0015]可选的,还包括:统计定位出的发生错误的位置的数量;若统计得到的数量为0,丢弃所述接收序列。
[0016]可选的,所述生成多项式g(x)由卫星导航接口文件给出。
[0017]一种卫星导航用CRC纠错系统,包括:
[0018]获取单元,用于:获取接收序列;所述接收序列长度为n比特;所述接收序列是发送方发出的n比特CRC码经信道传输后得到的;所述n为正整数;
[0019]CRC校验单元,用于:使用预设的生成多项式,计算所述接收序列的校正子向量;其中,若所述校正子向量为全零序列表征CRC校验通过,否则,表征CRC校验失败;
[0020]CRC纠错单元,用于:
[0021]若所述CRC校验失败,使用预置的校正子表和所述校正子向量,尝试定位所述接收序列中发生错误的位置;所述校正子表包括n个长度为p的向量,其中的第i个向量为与所述接收序列第i比特对应的校正子;
[0022]对定位出的发生错误的位置上的比特值进行纠错。
[0023]可选的,所述第i向量表示为T(i);在所述使用预置的校正子表和所述校正子向量,尝试定位所述接收序列中发生错误的位置的方面,所述CRC纠错单元具体用于:对于第i个位置,将所述校正子向量与T(i)进行模2运算,得到中间向量;当所述中间向量为全零序列,或者,在所述校正子表中搜索到与所述中间向量相匹配的向量时,确定所述第i个位置为发生错误的位置。
[0024]可选的,还包括:
[0025]校正子表生成单元,用于:
[0026]计算x^i mod g(x),得到第i个向量T(i)对应的多项式S(i);
[0027]其中,g(x)为所述生成多项式;
[0028]将多项式S(i)的多项式系数作为T(i)。
[0029]可选的,所述CRC纠错单元还用于:
[0030]统计定位出的发生错误的位置的数量;
[0031]若统计得到的数量为0,丢弃所述接收序列。
[0032]可选的,所述生成多项式由卫星导航接口文件给出。
[0033]可见,在本专利技术实施例中,在CRC校验失败后,并不是直接丢弃接收序列,而是使用预置的校正子表和所述校正子向量,尝试定位所述接收序列中发生错误的位置,对定位出的发生错误的位置上的比特值进行纠错,进而提高了数据接收处理效率,降低了导航电文的误码率。
附图说明
[0034]图1为本专利技术实施例提供的卫星导航CRC纠错方法的一种示例性流程;
[0035]图2为本专利技术实施例提供的卫星导航CRC纠错方法的另一种示例性流程;
[0036]图3为本专利技术实施例提供的误比特率示意图;
[0037]图4为本专利技术实施例提供的卫星导航用CRC纠错系统的示例性结构;
[0038]图5为本专利技术实施例提供的卫星导航用CRC纠错系统的另一示例性结构。
具体实施方式
[0039]下一代卫星导航系统采用CRC码作为导航电文的检错方案。现先介绍CRC码的生成过程,以及如何进行CRC校验。
[0040]假设对需要进行传输的原始k位二进制数据(信息比特)长度为k,对应的多项式为m(x),生成多项式g(x)的次数为p,生成多项式g(x)由卫星导航接口文件给出。
[0041]将多项式x
p m(x)对g(x)求余,会得到一个低于p次的多项式p(x),其系数对应长度为p的序列,称为校验序列或CRC校验码。
[0042]求余公式如下:
[0043]p(x)=x
p m(x)mod g(x)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(公式1)
[0044]随后,CRC校验序列附加在原始数据后面,组成包含CRC码的导航电文数据帧进行发送,CRC码的长度为n=k+p。假定CRC码对应的多项式为c(x),则有
[0045]c(x)=x
p m(x)+p(x)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(公式2)
[0046]在信号接收端进行CRC校验本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种卫星导航用CRC纠错方法,其特征在于,包括:获取接收序列;所述接收序列长度为n比特;所述接收序列是发送方发出的n比特CRC码经信道传输后得到的;所述n为正整数;使用预设的生成多项式,计算所述接收序列的校正子向量;其中,若所述校正子向量为全零序列表征CRC校验通过,否则,表征CRC校验失败;若所述CRC校验失败,使用预置的校正子表和所述校正子向量,尝试定位所述接收序列中发生错误的位置;所述校正子表包括n个长度为p的向量,其中的第i个向量为与所述接收序列第i比特对应的校正子;对定位出的发生错误的位置上的比特值进行纠错。2.如权利要求1所述的方法,其特征在于,所述第i向量表示为T(i);所述使用预置的校正子表和所述校正子向量,尝试定位所述接收序列中发生错误的位置包括:对于第i个位置,将所述校正子向量与T(i)进行模2运算,得到中间向量;当所述中间向量为全零序列,或者,在所述校正子表中搜索到与所述中间向量相匹配的向量时,确定所述第i个位置为发生错误的位置。3.如权利要求1或2所述的方法,其特征在于,所述校正子表中的第i个向量的生成过程包括:计算x
i mod g(x),得到T(i)对应的多项式S(i);其中,g(x)为所述生成多项式;将多项式S(i)的系数作为T(i)。4.如权利要求2所述的方法,其特征在于,还包括:统计定位出的发生错误的位置的数量;若统计得到的数量为0,丢弃所述接收序列。5.如权利要求1所述的方法,其特征在于,所述生成多项式g(x)由卫星导航接口文件给出。6.一种卫星导航用CRC纠错系统,其特征在于,包括:获取单元,用于...

【专利技术属性】
技术研发人员:张升强
申请(专利权)人:山东中科泰岳电子科技有限公司
类型:发明
国别省市:

相关技术
    暂无相关专利
网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1