王小燕 邵俊 钟慧敏 原征 吕争
(中国资源卫星应用中心,北京 100094)
我国遥感卫星技术迅速发展,资源、海洋、减灾等卫星相继发射,遥感卫星数据在各个领域得到了广泛的应用,对地面系统获取的卫星原始数据质量提出了更高的要求。星地信号传输系统链路中的大气干扰、轨道跟踪状态,以及信道和记录设备等因素,都直接影响遥感卫星获取的原始数据质量。遥感卫星原始数据质量反应了星地数据传输链路指标设计是否匹配、地面站数据接收记录是否正常,其质量问题主要包括:整轨误码或局部误码、丢帧、整轨无有效数据、滑位、双通道数据量大小不一致、缺某虚拟信道数据、压缩码流格式有误等。存在丢帧、误码、压缩码流格式问题的原始数据会影响标准产品质量,例如图像目视出现黑块或花块现象;误码率过大(例如整轨误码)、数据无效、滑位、通道数据缺失可能造成地面预处理失败,影响地面系统的有效运行。因此,遥感卫星在轨测试阶段通常要进行原始数据误码率测试,验证星地数据传输链路指标是否满足设计要求,地面接收系统是否满足指标要求;在交付使用后业务化运行阶段,当某一轨数据处理不正常时,也需要分析原始数据质量,以便定位是原始数据问题,还是地面处理系统问题。目前,一般通过误码率检测分析遥感卫星原始数据质量,针对国内外多颗在轨遥感卫星,原始数据误码率分析通常分为定性和定量两种方法,前者是通过移动窗显示人工观察,如通过通用软件查看;后者是通过专用设备检测分析数据流中误码情况,即误码率测试。
传统在轨遥感卫星原始数据误码率测试,都是通过统计数据中所有帧同步字部分的错误率来代表整个数据的误码率[1]。这种方法的一个缺陷是卫星一帧数据的长度通常在1000byte以上,而同步字长度是4~8byte,占比较小。以原始数据帧长2048byte、同步字长度8byte计算,帧同步字部分占数据总量的比重为0.39%,不具有很好的代表性。这种方法面临的另一个缺陷是适用性问题,即为提高星地链路增益,目前越来越多的遥感卫星下传数据采用低密度奇偶校验码(LDPC)编码方式,地面站在接收卫星数据时通过解调器对原始数据进行帧同步和LDPC译码,传到地面处理系统的卫星原始数据是帧同步后且同步字全正确的数据(同步字失锁的数据均被过滤),不能再通过帧同步字来发现和统计误码。文献[2]在一种数据差错率检测方法及实现中提出了基于伪随机(PN)码的数据差错率检测方法,伪随机序列在测试领域的应用非常广泛,但大多数是用硬件实现的,而软件实现具有低成本、研发周期短、可扩展性强等优点;文献[3]在遥感卫星数据记录系统误码率测试技术研究中用软件编程实现了基于PN码的误码率测试技术,但该方法作为卫星发射后在轨测试及常规业务误码率测试的前提条件是卫星安装有PN码发生器且保证PN码发生器处于开启状态;文献[4]在遥感卫星原始数据质量检查方法与实现中对原始数据进行了分段抽样统计误码率并按段范围输出测试结果,但没有明确误码发生的具体位置。
针对上述问题,本文提出基于空帧数据统计卫星原始数据误码率的方法,该方法利用原始数据中空帧数据的错误量进行误码率计算,输出并显示误码出现的位置及误码位数,得到整轨原始数据误码分布情况输出报告。通过实时过程输出,以及事后追溯日志,均可以直观得到数据误码发生的位置和误码分布情况,便于查找及定位原始数据问题。
当前卫星数据传输格式基本采用空间数据咨询委员会(CCSDS)格式,多个载荷数据混合编排在1个或2个数据传输通道中,载荷数据多有可变压缩比模式。为满足数据实时下传的要求,在载荷数据采用最小压缩比的情况下,数据传输通道速率需要大于卫星的有效数据率。当载荷数据压缩比变大时,卫星有效数据率更小于数据传输通道速率。为使载荷各种工作模式下数据传输通道均保持1个稳定的速度,需要在原始数据中不断地填充空帧数据。空帧数据占整个数据的比重可以达到10%~85%,如高分一号卫星空帧数据占原始数据比重通常在30%以上,高分四号卫星数据在300Mbyte/s实传时,空帧数据占原始数据比重甚至超过80%。空帧数据是1个已知序列的数据,利用空帧数据统计在轨卫星原始数据误码的方法,可以极大地提高统计数据的代表性和统计结果的可信度。同时,该方法对于低密度奇偶校验码(LDPC)译码后的卫星原始数据同样适用。
经过统计分析,卫星遥感数据原始数据误码(含丢帧)易出现在整轨数据的首尾两端,主要原因为建立链路过程中锁定不稳定,建议可通过匹配接收站跟踪时间优化。此外,原始数据的质量与接收信噪比相关,且误码出现位置随机,出现误码的原因可能包括:①星地天线始终对准才能获得尽可能大的信号强度,一旦偏离超差会使信号失锁、误码增大,甚至接收中断;②极化隔离度较差,当一个极化信号泄露至另一个极化信号的通道,而泄漏过去的信号对另一个信号而言则是干扰信号,从而产生误码;③若地面接收站信号衰减设置不匹配、天线跟踪性能不足、极化对消功能不具备或未发挥作用等也都可能造成原始数据质量差;④天线仰角较低、受到大气干扰、遮挡等因素导致的接收信号差。
利用空帧数据统计在轨卫星原始数据误码率的检测方法是根据卫星数传格式定义,逐帧对解扰后的卫星原始数据虚拟信道标识进行判断,如果标识是空帧数据,则把该帧数据逐位与标称空帧数据进行比对,与标称空帧数据区比对的不相同位即为误码,统计所有空帧累加的空帧数据区中的误码位数占空帧总位数的比率。包括以下检测步骤(见图1)。
(1)原始数据帧同步:是对遥感卫星原始数据进行帧同步字识别与字节对齐,恢复原始数据帧格式的过程。传统利用帧同步字统计误码,是在该步骤的帧同步字识别时,设计有容错位数。如果当前位置相应字节与标称帧同步字比较的不相同位数小于容错位数,则认为当前位置相应字节为帧同步字字节,与标称帧同步字比较的不相同位即为误码。统计搜索到帧同步字输出的帧数(num_frames)及所有帧同步字部分的误码数(allbitsoff),用于后面误码率的计算。
(2)原始数据解扰[5]:是针对星上对下传数据做加扰处理的逆处理,恢复卫星原始数据的过程,即根据卫星数据传输格式定义,生成与卫星相同的扰码序列,对帧同步后数据中除同步字以外的数据与扰码序列逐位异或。
(3)空帧判断及误码统计:根据卫星数据传输格式定义,逐帧对解扰后的原始数据虚拟信道标识进行判断,如果标识是空帧数据,则把该帧数据区序列与标称空帧数据区序列逐位进行比对,不相同位即为误码。输出出现的误码位置及误码位数到屏幕及输出报告。CCSDS数据传输格式是多遥感器数据合成的编码方式,支持多路虚拟信道数据的数据传输合路,通过虚拟信道标识区分各路数据[6]。空帧数据是其中的一路虚拟信道数据。
不同卫星的空帧数据区序列有所不同,需要根据具体卫星的数据传输格式定义,得到标称空帧数据区序列。以某卫星为例,空帧数据区序列为00~FF(16进制)的循环,共894个字节,如下:
000102……FEFF0001……
把从原始数据中提取的空帧数据区数据与标称空帧数据序列逐位异或,得到误码数。统计提取到的空帧帧数(fill_frames)及所有空帧累加的空帧数据区中的误码位数(fill_allbitsoff),用于后面误码率的计算。
(4)误码率计算:误码率为参与统计的数据中发现的误码数与参与统计数据的比值。利用空帧数据统计在轨卫星原始数据误码的方法为步骤(1)~(4),误码率计算的分母为搜索到的空帧帧数(fill_frames)乘以空帧数据区长度(data_length)再乘以8(1个字节为8位),分子为所有空帧累加的空帧数据区中的误码位数(fill_allbitsoff)。应用程序计算过程:BER=fill_allbitsoff/(fill_frames*data_length*8)。
(5)输出统计参数、统计结果到屏幕及输出报告。输出的检测报告包含了所捕获的第一帧和最后一帧的位置信息、捕获总帧数、丢帧数、一轨数据的误码率和误码出现的位置信息。
(6)重复以上步骤,统计所有待测原始数据的误码率情况,并逐条记录各个原始数据的误码率测试结果。
(7)针对原始数据偶尔出现误码及其他问题的情况,采用特殊问题特殊处理的方法,建立健全容错机制,确保每轨、每段正常数据都成功处理,提高原始数据的利用率。
综上,利用空帧数据统计在轨卫星原始数据误码的方法,可以极大提高统计数据的代表性和统计结果的可信度。
本文方法已应用到某些卫星的原始数据质量控制过程,收到良好的效果。通过对几颗卫星遥感数据大量检测和统计,可以看到:大多卫星数据在开始和结束的时间数据误码率较高,由于天线仰角较低时,受到大气干扰、遮挡或者跟踪捕捉信号差的缘故而造成误码率集中出现。分析原始数据质量,采用本文方法测试后定位数据丢行原因为原始数据有误码。支撑接收站设计最优数据接收方案,该星原始数据正常率提高到90%;修改地面处理软件后,丢行现象由80%减少到千分之一(见图2),大大提高了原始数据质量和数据可用性,从而提升地面处理系统的稳定性和容错性。
本文采用基于空帧数据统计误码率的方法实时分析检测遥感卫星原始数据质量,简单实用,不仅精确地统计出原始数据的误码率,而且还可以记录误码出现的具体位置和错误情况,实践证明该方法可为遥感卫星在轨测试及日常原始数据质量监测提供更加有效、高速和快捷的定量检测手段,支撑接收站设计最优数据接收方案,提高遥感卫星原始数据质量和数据可用性,从而提升地面处理系统的稳定性和容错性。