基于奇偶校验编码的S模式雷达误码保护机制仿真

2022-07-19 09:53曾增威
信息记录材料 2022年5期
关键词:数组字段二进制

曾增威

(民航珠海空管站技术保障部终端设备室 广东 珠海 519040)

0 引言

二次监视雷达是目前我国民航使用最广泛且比较成熟的雷达技术,其工作原理是采用询问应答的模式进行目标的识别,询问频率按规定在1 030 MHz、应答频率按规定在1 090 MHz[1]。国际民航组织将其划分为独立协同式监视,主要包括A/C模式二次监视雷达和S模式二次监视雷达。其中,S模式二次监视雷达是为解决A/C模式存在的异步干扰、代码不足以及高度精度不准确等弊端而提出的解决方案[2-3]。

随着我国民航设备基础设施的建设,二次监视雷达的雷达覆盖面积在我国已经相当完善,相关技术的应用也越来越广泛。特别在ADS-B应用上,因为二次监视雷达设备的普遍,使用S模式二次监视雷达作为ADS-B数据链技术被推广使用[4]。在数据链传输中,编码的正确性是一个重要课题,检错机制显得尤其重要。奇偶校验编码作为一种检错码使用尤其广泛。二次监视雷达S模式误码保护机制亦采用了奇偶校验编码来进行检错保护。

奇偶校验编码的特性以及技术的相关研究颇为丰富,而针对S模式二次监视雷达的奇偶校验具体实现却较为缺乏。有关S模式二次监视雷达技术标准及关键技术分析也论著颇丰,而对误码保护机制却很少提及。

针对上述问题,本文主要讨论S模式二次监视雷达的误码保护算法原理以及利用Java编程语言实现一个二进制编码的简化模型,并模拟生成S模式二次监视雷达校验码的相关字段。

1 S模式误码保护算法

1.1 S模式二次监视雷达误码算法结构

S模式二次监视雷达的数据编码包括询问数据、应答数据以及数据位编码。询问数据块和应答数据块均由56或112个数据单元组成。询问数据块用于询问航空器相关信息,应答数据块用于对询问信号应答[5]。S模式二次监视雷达的询问和应答模式的数据格式定义包括基本字段、未分配的编码空间、零和未分配的编码以及军用格式保留。未分配的编码空间由全零组成,由询问机和发射机发射。对于零和未分配的编码,意味着没有操作要求[6]。军用格式用途是各国军方自己定义的编码。而对于所有有效数据信息,基本字段则是必不可少的。

基本字段包含有两个字段,一个是专门定义传输信号格式的描述符,用来标明是上行格式还是下行格式,存在于所有格式报文的开头。其中UF表示上行链路格式,DF表示下行链路格式。另一个字段出现在传输信号结尾的24位字段,该字段包含奇偶校验信息,即本文要讨论及研究的重点。奇偶校验信息可以分为两大类,分别是AP(地址/奇偶)和PI(奇偶/询问器识别)。PI字段仅在下行链路中使用,未在上行链路中使用。这两个基本字段是信号传输中的基本信息,在两个基本字段中间的位字段,则是定义了的包含各种信息的各种数据格式,见图1。

1.2 S模式二次监视雷达误码保护机制

S模式二次监视雷达误码保护机制采用的技术是奇偶校验编码,其奇偶校验码的产生来自于信息位序列(m1,m2,..,mk,)生成的一个奇偶校验序列,该序列是一个24位的序列。在信息位序列中,k的值有两种,分别是32和88,代表短型和长型两种信息。奇偶校验序列通过以下多项式产生:

在应用二进制多项式时,用x24[M(x)]除以G(x)产生奇偶校验编码。在这里M(x)称为信息脉冲,由信息位序列推导而来。信息脉冲M(x)如下所示:

mk+mk-1x+mk-2x2+..+m1xk-1

x24[M(x)]的结果即在M(x)序列后面补24个0,而x24[M(x)]除以G(x)的余子式R(x)则用于产生奇偶校验序列,其中余子式R(x)的次数小于24。假设奇偶校验序列为pi(i=1~24),pi的值即R(x)中x24-i的系数。

得到奇偶校验序列之后,利用地址码信息或询问器识别码信息,可生成校验字段AP字段和PI字段。

2 二次监视雷达S模式AP字段、PI字段生成机制

2.1 上行数据链AP字段编码生成机制

上行数据链的AP字段编码生成机制需要以下序列:(1)飞机地址、全呼叫地址或广播地址位序列Ai;(2)奇偶校验序列pi。(1)中所指的飞机地址指24位有效地址码,通过询问信号解码取得。(2)中奇偶校验序列由信息位序列通过多项式G(x)产生。

对于上传数据链的AP字段,一个改进序列bi(i=1~24)被要求用于参与AP字段的编码。bi序列由多项式G(x)A(x)中x48-i项的系数产生。其中,A(x)定义如下:

A(x)=a1x23+a2x22+…+a24

假设上传链路中AP的上传次序为:

tk+1,tk+2,...,tk+24

在上述上传链路中,tk+I=bi⊕pi,符号⊕表示模二加法,又称异或加法,即不产生进位的二进制加法,值相同则为1,相异则为0。

2.2 下行数据链AP字段编码生成机制

下行链路AP字段编码生成机制同上行链路AP字段的生成机制类似,都需要S模式地址码以及奇偶校验序列,所不同的是,下行链路AP字段无需再生成改进序列以用于编码,可直接由S模式地址码以及奇偶校验序列产生。假设下传链路中AP的次序为

tk+1,tk+2,...,tk+24

其中tk+i=ai⊕pi,其中ai为24位有效地址码。

2.3 下行数据链PI字段编码生成机制

同下行数据链AP字段编码生成机制类似,假设下传链路中PI的次序为

tk+1,tk+2,...,tk+24

其中tk+i=ai⊕pi。不同的是这里的ai不是指24位有效飞机地址码,而是按照以下规则产生:前17位全部为0,接下来的3位与CL字段值相同,最后4位与IC字段值相同。

CL字段指在上行链路UF=11中定义的字段,其值定义了IC字段的内容,由3位二进制组成,取值范围为5个,分别为:000、001、010、011、100,其他值不使用。这5个值代表的含义如下:编码(二进制):000表示IC字段中包含Ⅱ码;001表示IC字段中包含SI码1到15;010表示IC字段中包含SI码16到31;011表示IC字段中包含SI码31到47;100表示IC字段中包含SI码 48到 63。

其中Ⅱ码指询问识别码,由4位二进制组成,范围为0~15,用于识别询问器。SI码指监视识别码,由6位二进制组成,0未使用,1到63可以分配给询问器,用于识别询问器。

IC字段在上行链路中定义,由4位二进制组成。包含4位询问识别(Ⅱ),或根据CL字段值包含6位监视识别码(SI)的低4位。

3 仿真实现及其结果

仿真实现使用Java语言代码编程,通过简化以上算法模型进行编程。多项式序列采用二进制,使用数组来存储多项式序列,余子式使用多位二进制除法实现。多项式乘法采用多位二进制乘法加以实现[7],使用随机数生成函数模拟随机生成的信息位序列、飞机地址、CL字段以及IC字段。最终从结果数组中获取到奇偶校验序列pi以及改进的序列bi,由奇偶校验序列pi以及改进的序列bi模拟产生AP字段和PI字段,实现了误码保护算法原理的编码实现。

3.1 奇偶校验序列算法及编程仿真

由S模式二次监视雷达误码保护算法可知,奇偶校验序列的产生需要两个序列:多项式序列G(x)以及信息位序列M(x)。多项式除法使用多位二进制数组来模拟实现[8-9]。算法设计如下:(1)使用数组构建G(x)序列;(2)使用随机函数和数组构建M(x)序列;(3)利用数组移位实现多位二进制数组除法;(4)将最终余子项以数组形式返回,作为奇偶校验序列。

3.2 改进序列算法及编程仿真

改进序列的生成需要两个序列,分别为多项式序列G(x)以及地址码位序列A(x),在Java中使用数组存储[10]。多项式乘法采用多位二进制数组乘法实现,算法设计如下:(1)使用随机函数和数组构建地址码序列A(x);(2)利用数组移位实现多位二进制数组乘法;(3)从乘积数组中组装返回数组作为改进序列bi。多项式序列G(x)在上文已论述。

3.3 AP字段、PI字段

3.3.1 上行链路AP字段算法及编程仿真

上行链路AP字段的生成需要两个序列:奇偶校验序列和改进序列。上行链路AP字段值的产生是两个序列之间进行模二加法,使用数组模拟模二加法。算法设计如下:使用数组存储模二加法的值,对两个数组进行比较,值相同则赋值0,否则赋值1。

3.3.2 下行链路AP字段算法及编程仿真

下行链路AP字段生成需要两个序列,飞机地址码序列A(x)和奇偶校验序列。然后利用数组模拟模二加法,与上文类似。

3.3.3 下行链路PI字段算法及编程仿真

下行链路PI字段需要序列有CL、IC以及奇偶校验序列。其中CL、IC用于构建A(x)序列,然后将A(x)和奇偶校验序列使用数组进行模二加法。算法设计如下:(1)使用随机函数构建仅有5个值的三位二进制数组代表CL;(2)利用CL、IC数组构建A(x)序列数组;(3)使用数组进行模二加法。最终输出结果见图2。

4 结语

本文依据S模式二次监视雷达误码保护算法原理,使用Java语言进行简化模拟编程实现,提供了一种实现S模式二次监视雷达误码保护算法原理的实现模型。从基本原理出发,阐述奇偶校验编码生成方式,探索奇偶校验编码在民航S模式雷达中的应用。

猜你喜欢
数组字段二进制
JAVA稀疏矩阵算法
带钩或不带钩选择方框批量自动换
用二进制解一道高中数学联赛数论题
有用的二进制
JAVA玩转数学之二维数组排序
有趣的进度
浅谈台湾原版中文图书的编目经验
更高效用好 Excel的数组公式
寻找勾股数组的历程
无正题名文献著录方法评述