APP下载

改进的S模式纠错算法❋

2013-03-25梁丰中国西南电子技术研究所成都610036

电讯技术 2013年6期
关键词:误码码元译码

梁丰❋❋(中国西南电子技术研究所,成都610036)

改进的S模式纠错算法❋

梁丰❋❋
(中国西南电子技术研究所,成都610036)

对检测到错误的S模式应答信号报文纠错,传统的方法是查表法,不仅效率很低,而且要求很大的存储空间存放错误图样,不适合工程应用。通过对S模式应答信号的干扰情况、编译码方式及循环码特性的深入研究,提出了余数计算的改进方法;再结合使用码元置信度,实现了能快速、准确定位误码并纠正它们的算法。改进的纠错算法不仅效率高,而且占用系统资源少,易于硬件实现,其有效性已得到工程应用的验证。

S模式;应答信号;突发脉冲干扰;循环冗余校验;检错;纠错

1 引言

循环冗余校验(Cyclic Redundancy Check,CRC)是一种用于提高S模式通信质量的差错控制编码技术,这种技术在信息码元之外加入了多余的码元,这些多余的码元不载荷信息,只是用来校验信息码元在传输中是否出现差错及为纠正错误信息码元提供处理依据。根据S模式应答信号处理流程,接收机不仅要对接收信号报文检错,还要求对检测到错误的信号报文纠错[1]。

CRC是在严密的数学理论基础上建立起来的,其检错能力很强,实现方法也不难。为了能够纠错,要求每个可纠正的错误样本必须与一个特定余数有一一对应关系。对只有一位错误的信息,错误图样比较少,采用查表的方式纠错还算简单;但对于不止一位错误的信息,错误图样的数量急剧增加,不仅需要大量的存储空间存放,查找也要花费大量时间。

突发脉冲对S模式应答信号的干扰通常不止一位,使用查表法纠错显然不适合工程应用。必须设计一种算法,通过建立余数与错误图样的某种对应关系来找出误码的确切位置。本文首先对S模式应答信号的主要干扰进行分析,然后对编译码及检错过程简要说明,最后详细叙述了改进的纠错算法及其实现方法。纠错的关键是对误码准确定位,这正是算法改进的重点。纠错过程中要使用码元置信度,它携带了低置信度码元的位置信息。改进后的纠错算法已在硬件平台实现,实际使用效果很理想。

2 S模式应答信号的主要干扰

S模式应答信号的中心频率是1 090 MHz,单个脉冲宽度为0.5μs,码速率为1 Mb/s。在同一空域中,存在多部应答机同时工作的情况,应答信号的频率相同,工作方式为S模式和空中交通管制雷达信标系统(Air Traffic Control Radar Beacon System,

ATCRBS)模式;还存在载波频率在1 090 MHz附近的TACAN信号。此外,应答信号的多径效应也是干扰的另一主要来源,这些信号相互叠加,形成脉冲串,属于突发性干扰,当空域中的飞机密度很小时,这些干扰不明显;但当空域中的飞机密度很大时,干扰会非常严重,尤其以ATCRBS模式应答信号对S模式应答信号的异步干扰最为严重,给接收机译码及报文使用带来很大麻烦。

3 S模式应答信号编译码过程

对S模式应答信号纠错,需要研究S模式应答信号的编译码原理。S模式应答信号由4个前导脉冲和56位(或112位)报文信息组成,报文信息的前32位(或88位)是数据块(信息码元),后24位是校验块(监督码元)[2]。报文信息编码过程如图1所示。

地面接收机对接收到的应答信号先做滤波、变频、放大等处理,然后根据脉冲幅度及位置关系进行译码。译码是编码的逆过程,正确的译码直接关系到后面的纠错能否成功,译码的同时还要对每一个码元设置置信度以用于纠错。译码后要对整个报文信息进行检错,检错计算的结果也用于纠错处理。

4 码元置信度判定

S模式应答信号报文采用PPM方式,每1 b对应1μs时间长度。如果前0.5μs或后0.5μs内有脉冲幅度(主片),则该位码元记为“1”或“0”;如果另0.5μs(从片)内没有脉冲幅度且主片的脉冲幅度来自天线的主波束而不是旁瓣,则这位的置信度记为高(通常以“0”表示),否则记为低(通常以“1”表示)。很多方法可实现S模式应答信号报文译码及码元置信度判定,文献[3-4]描述了可行的算法。

5 纠错前处理

S模式应答信号报文是一种(56,32)循环码(或(112,88)循环码),生成多项式G(x)为24位。根据循环码理论[5],将报文信息中的数据块M(x)向左移动24位得到的结果可表示为

那么,一个完整的报文信息为

式中,A(x)为特殊序列(比如询问机代码或飞机地址码)。假设在传输过程中有最大长度为24位的脉冲干扰:

式中,j是距离数据块末尾的位数,F(x)是最高指数不大于23次幂的多项式。E(x)是F(x)左移j位的结果,是最高指数不大于23+j次幂的多项式,可得

在实际处理中,通常对除去(使用异或运算)特殊序列的报文计算余数S(x),则S(x)=ε(x)。因此,如果报文信息在传输过程中没有错误,使用CRC计算后可以得到预期余数“0”;相反,如果没有得到预期的余数(比如还有未知余数ε(x)),则说明报文信息在传输过程中已被干扰或译码有错(本文仅讨论脉冲干扰造成的错误)。

有种特殊情况,如果j=0,即干扰造成的错误只发生在报文信息的最低24位中。分析式(5)可知,等号左边E(x)的最高次幂为23,而等号右边G(x)的最高次幂为24,因此必须是e(x)=0才能保证等式成立。由此可得ε(x)=E(x),这说明计算的结果就是错误本身。

6 应答信号报文纠错

S模式应答信号报文纠错流程如下:

(1)判断余数S(x)是否为零,不为零则需纠错;

(2)找到误码的位置;

(3)纠正误码,即误码与“1”异或;

(4)再次进行检错计算,验证纠错是否成功,成功则输出报文信息,否则申请重发或丢弃。

由前面叙述可知,突发脉冲对S模式应答信号报文的干扰往往不止一位。根据循环码原理,对于24位的干扰,可引起224-1种错误,每种错误对应一个特定的余数,即存在224-1种错误样本。如果将对应每种错误的样本事先计算出来并存储,那么在纠错过程中就可以通过查找对应的错误样本的方法找出误码的位置。但是,这种方法占用资源多,执行效率很低,不合适用于实际工程中对S模式应答信号报文进行纠错。

6.1 改进的纠错思路

如果对报文信息的干扰只出现在最低24位以内,余数S(x)恰好与干扰E(x)相对应,数据块则不受影响。但实际的干扰可能对报文信息的任意一段造成影响,要准确定位干扰出现的位置,除使用信息码元和余数外,还需要码元“置信度”的配合。

置信度的判定是随着译码过程进行的,它为“高”时,说明该位码元符合编码规则,译码是准确的;它为“低”时,说明该位码元具有不确定性,而不能认为该位一定有错。因此,必须具备以下两个条件的报文信息才能进行纠错:一是余数S(x)不为零,如果余数为零,那就说明译码没有错误,即报文信息没有受到干扰,无需纠错;二是置信度必须至少有一个为低,可以纠错的码元只针对置信度为低的。如果某码元置信度为高,说明译码是准确的,因此即使检错后发现报文信息有错,也无法纠错,只能丢弃报文信息。

纠错的关键是准确对误码定位,纠错方法的改进本质上是设计一种效率更高的定位误码的算法。前面提到如果干扰只出现在报文信息的最低24位中,计算得到的余数就是干扰本身。既然报文信息是一种循环码,那么将它循环右移不会改变其特性,如果将误码移动到最低的24位中,就可以准确对其定位,处理方法如下:

(1)将余数S(x)与置信度序列的最低24位比较;

(2)如果S(x)中所有出现“1”的位置与置信度序列最低24位中所有出现“1”(低置信度)的位置一一对应,则误码即被定位,将报文中那些与S(x)中为“1”的位置相对应的码元纠正即可;

(3)如果不能一一对应,将报文和置信度序列循环右移一位,并对移动后的报文计算新的余数S(x);

(4)重复步骤1~3,直到这种一一对应关系存在,否则错误就不能得到纠正。

从定位方法可以看出,每循环移动一位后都要重新计算一次余数S(x),而余数是通过对循环移动的整个报文计算得来,这样的计算势必花费较多时间。为提高定位误码的效率,需要优化计算余数的算法。

6.2 高效的定位算法及实现

由于采用了循环码,因此整个报文循环左移而产生的余数S1可由最初的余数S0产生,即

式中,S0和S1的最高次幂不大于23,Q0(x)和Q1(x)是商。式(8)中等号左边多项式的最高次幂可能为24,而G(x)的最高次幂正是24,因此括号内计算结果必为常数(0或1)才能保证等式右边多项式的最高次幂不大于24。

分析式(8)可知,如果S0的最高次幂小于23(即系数s23=0),那么这个常数必须为0;如果s23=1,

xS0的最高次幂为24,而S1的最高次幂不大于23,等式左边不为0,因此常数为1。

总结上述分析可得

式(9)即为余数S1的计算方法,它可直接由检错计算产生的结果S0和生成多项式G(x)使用移位及异或运算得出,不必对循环移动的报文重新计算,计算量自然少很多,效率必然很高。据此新算法设计的错误定位实现逻辑如图2所示。如图所示,用置信度最低24位初始化L寄存器,用原始余数初始化E寄存器。由于式(9)是循环左移得出的结论,所以必须将G(x)“高低位翻转”得到G*(x),才能确保如图右移计算的结果正确。

图3所示为采用改进后的算法的S模式应答信号报文纠错流程,此图也说明了纠错的实现方法。

6.3 算法仿真

图4所示为改进后的纠错算法仿真计算数据。仿真使用Matlab按照图3所示流程建立纠错模型,将试验中采集的一次全呼应答报文作为输入,该报文通过CRC检错发现了错误。检错后的报文经过纠错模型的处理,输出的结果再经过一次检错,最终证实纠错是成功的。仿真结果验证了算法的正确性。为便于分析,仿真过程中将每一步计算的数据输出。

7 改进算法的试验情况

从算法的推导过程可以看出,计算中使用了循环移位、异或及比较运算,这些运算非常适于硬件实现。S模式信号处理的实时性要求很高,在工程中使用FPGA实现该纠错算法是很理想的选择。纠错的最大意义是当空域中飞机密度很大时,它提高了信号的可用性,确保对飞机持续、稳定地监控;同时,减少了请求重发的概率、降低了系统的复杂性。

8 结束语

本文介绍的改进的S模式纠错算法具有计算量小、效率高、正确率高、硬件实现容易等特点,该算法对由于突发脉冲干扰而造成错误的应答信号进行纠错,效果十分理想。对S模式应答信号纠错,除已介绍的算法外,以下两点还需要深入研究。一是对接收信号正确译码并准确判定置信度。报文信息及相应的置信度是纠错的前提,它们的正确性直接影响纠错的结果,因此需要对译码及判定置信度的方法仔细研究。二是纠正随机错误的算法。在S模式信号处理中使用了单脉冲、灵敏度时间控制(SensitivityTime Control,STC)等先进技术,这些技术可减少无线信道中随机干扰引起的错误,但不可能完全消除;另外,译码过程也可能发生随机错误。虽然这类错误所占比例很小,但也有必要对纠正它们进行研究。

[1]Doc9684 An/951,Manual on the Secondary Surveillance Radar(SSR)Systems[S].

[2]ICAO,Annex 10 to the Convention on International Civil Aviation,Volume IV[S].

[3]Galati G,Gasbarra M,Piracci E G.Decoding techniques for SSRMode Ssignal in high traffic environment[C]//Proceedings of Radar Conference.[S.l.]:EURAD,2005:399-402.

[4]陈士毅.模式S应答处理中的数据处理[D].成都:电子科技大学,2006. CHEN Shi-yi.Data Processing of Mode SReply Processing[D].Chengdu:University of Electronic Science and Technology of China,2006.(in Chinese)

[5]樊昌信,张甫翊,徐炳祥,等.通信原理[M].5版.北京:国防工业出版社,2005. FAN Chang-xin,ZHANGFu-yi,XUBing-xiang,etal.Theory of Communication[M].5th ed.Beijing:National Defense Industry Press,2005.(in Chinese)

LIANG Feng was born in Neijiang,Sichuan Province,in 1977.He received the M.S.degree froMUniversity of Electronic Science and Technology of China in 2006.He is now an engineer.His research concerns signal processing of the secondary radar.

Email:franvin-leung@163.com

An IMproved AlgorithMfor Mode S Error Correction

LIANG Feng
(Southwest China Institute of Electronic Technology,Chengdu 610036,China)

To correct the Mode S reply message when the error is detected,the table lookup is a traditional method.But it has very low efficiency,and plenty of space is needed to store error patterns.Thismethod is not suitable for the engineering application.Through intensively studying the interference conditions,coding of Mode S reply and the characteristic of cyclic code,an improvedmethod of calculating remainder is presented.As a result,an algorithMis realized with which error codes can be located quickly and accurately by using the code confidence,and then be corrected.The improved algorithMnotonly has very high efficiency,but also takes up less systeMresources,and can be implemented easily in hardware.The effectiveness of improved algorithMhas been verified in the engineering application.

Mode S;replymessage;burst pulse interference;cyclic redundancy check;error detect;error correction

date:2012-10-26;Revised date:2013-03-18

❋❋通讯作者:franvin-leung@163.coMCorresponding author:franvin-leung@163.com

TN911.72

A

1001-893X(2013)06-0755-04

梁丰(1977—),男,四川内江人,2006年于电子科技大学获硕士学位,现为工程师,主要研究方向为二次雷达信号处理。

10.3969/j.issn.1001-893x.2013.06.016

2012-10-26;

2013-03-18

猜你喜欢

误码码元译码
基于ZYNQ的IRIG-B(DC)码设计与实现
分段CRC 辅助极化码SCL 比特翻转译码算法
基于校正搜索宽度的极化码译码算法研究
LFM-BPSK复合调制参数快速估计及码元恢复
ZPW-2000A电码化轨道电路误码问题分析及解决方案
一种基于CAN总线的误码测试方法
基于极大似然准则的短猝发信号盲解调
从霍尔的编码译码理论看弹幕的译码
多支路两跳PF协作系统的误码性能
基于FPGA的IRIG-B码解码器设计