一种针对Cortex数据格式的卫星测试数据比对方法技术

技术编号:19011531 阅读:40 留言:0更新日期:2018-09-22 10:57
本发明专利技术提供了一种针对Cortex数据格式的卫星测试数据比对方法,使用文件、队列和多线程技术实现对Cortex数据的存储和读取,具备处理大量数据的能力,具有较高的数据处理效率。读取数据后,使用查找帧头的方法将Cortex数据包分解为三种数据帧,简化了软件处理流程,获取有效数据帧后截取其中的数据区作为待比对的实际数据,同时更新已处理字节计数,以便计算错误数据的位置。在数据比对阶段,使用队列存储参考数据,将参考数据生成算法独立出来,可适应不同格式数据比对的需求,可一次性获取完整的参考数据,通过比对实际数据和参考数据可以定位错误数据的字节位置,并将比对结果记录到日志文件,为卫星数据传送功能测试人员分析数据错误提供了便利。

【技术实现步骤摘要】
一种针对Cortex数据格式的卫星测试数据比对方法
本专利技术所属卫星测试
,具体涉及一种卫星测试数据比对方法及传送功能测试系统。
技术介绍
地面测试设备用于在研制卫星的过程中测试卫星的各项功能。为测试某卫星的数据传送功能,需要在测试时使用Cortex设备接收卫星数据,然后Cortex将数据下传到地面测试软件(下称测试软件)进行保存和数据比对,根据数据比对结果来确定卫星数据传送功能是否正常。为了方便测试,该数据比对方法需要具备:1)能够进行大数据量的对比;2)适应多种数据生成算法的情况;3)能够定位错误数据;以提高测试软件的易用性和测试效率。卫星的数据传送功能具有较高的传输速率,地面测试系统需要使用Cortex(ZDS公司一个高速信道仿真测试解调产品)设备来接收卫星数据。由于传输速率高,测试软件不能做到实时数据比对,需要先把Cortex下传的数据保存为数据文件(数据文件大小可达上TBytes),再从数据文件中读取数据进行数据比对。Cortex下传的数据将卫星测试数据打包为一定的格式,测试软件需要提取有效的卫星数据。另外,卫星测试数据具有不同的生成算法,测试软件要能够按照不同算法生成数据参考源。为了测试人员能够定位数据错误的位置,测试软件需要能够记录比对错误数据的字节位置,以便测试人员在数据文件中定位错误位置,通过查看错误数据分析错误情况和原因。
技术实现思路
本专利技术要解决的技术问题是提供一种针对Cortex数据格式的卫星测试数据比对方法,它能够进行大数据量的对比,适应多种数据生成算法的情况,能够定位错误数据。本专利技术采用的技术方案如下:一种针对Cortex数据格式的卫星测试数据比对方法,使用文件存储Cortex下传数据,使用线程1读取文件将数据放入队列,使用线程2读取队列进行下一步数据处理;将Cortex数据包分解为三种数据帧,仅对有效数据帧进行进一步处理;使用队列存储生成的参考数据,在进行数据比对时,一次性从队列中取出完整的参考数据,与有效数据帧的数据区进行比对后,计算出错误数据的位置,并将参考数据的值、错误数据的值和错误数据的位置存储到日志文件。进一步地,参考数据与有效数据帧的数据区进行比对,若两者完全一致,则表明卫星数据正确;若两者不一致,则对每个字节进行一一比对,直到定位到错误数据。进一步地,所述Cortex数据包格式包含包头、包信息、有效数据帧和包尾。进一步地,所述有效数据帧包含帧头、帧信息和数据区。进一步地,用查找帧头的方法将Cortex数据包分解为三种不同的数据帧。进一步地,在数据帧查找阶段和数据区比对阶段均更新已处理数据计数,使错误数据定位到字节。进一步地,通过队列使参考数据的生成算法独立于数据比对流程,可方便修改参考数据生成算法。本专利技术与现有技术相比,其有益效果在于:使用文件、多线程和队列技术实现对大数据的事后处理;使用队列存储参考数据,可根据不同的算法生成参考数据,适应多种数据生成算法的情况;在数据帧查找阶段和数据区比对阶段均更新已处理数据计数,使错误数据可以定位到字节,为测试人员分析数据错误提供了极大的便利。附图说明图1是卫星数据传送功能测试系统示意图;图2是Cortex数据包格式示意图;图3是本专利技术的数据处理流程图。具体实施方式现结合实施例、附图对本专利技术作进一步描述:卫星数据传送功能测试系统如图1所示,卫星通过电缆线将数据传送给Cortex设备,Cortex设备再通过网线将数据传送给地面测试设备,测试软件运行于地面测试设备中,由它对数据进行数据的存储和比对。本专利技术运用于测试软件。由于数据传送功能传输的数据量较大,软件无法实时处理,因此,软件先将数据存储为数据文件。与此同时,软件使用多线程技术启动一个单独线程来读取数据文件。为提高数据处理效率,软件使用队列技术缓存数据,再启动另一个线程来读取队列的数据进行处理。数据处理方法分为两个步骤:首先是按不同帧头查找不同数据帧。根据Cortex的数据包格式,将数据包的包头、有效数据帧、包尾都看做独立的数据帧,根据帧头查找到对应数据帧,仅对有效数据帧进行下一步处理。然后,取出有效数据帧的数据区进行数据比对。为验证数据是否丢失或者错误,数据区的数据一般是按照一定算法生成,例如,递增,递减等。测试软件根据同样的算法生成用于比对的参考数据源。为了适应多种数据生成算法的情况,测试软件使用队列存储生成的参考数据源,使生成参考数据的流程独立于数据比对流程。在数据比对时,软件只需从参考数据队列中一次性取出所需长度的参考数据与数据区的内容进行比对,不必关心参考数据如何生成。若数据比对发现数据不一致,则再进行单个数据的比对,直到定位错误数据的字节位置,将有关信息保存到日志文件以备查看。Cortex设备下传的数据包格式如图2所示,其中,包头长度固定是4个字节,内容是123456789;包信息包含包长度、数据通道、数据帧长度等信息,长度固定为N1;有效数据帧就是卫星传输的有效数据,长度固定为N2,数据帧格式包含帧头、帧信息、数据区三个部分,其中数据区就是测试软件需要比对的数据内容;包尾长度固定是4个字节,内容是-123456789。本专利技术的数据处理流程如图3所示,软件先启动线程1不断读取保存在本地的Cortex数据文件,并将读取的数据放入队列1。然后又启动线程2读取队列1的数据进行下一步处理。本专利技术使用一个全局变量作为已处理数据的字节计数,设该变量为gAllCount,该变量用于后面定位错误数据的位置。本专利技术为了简化软件处理过程,将图2中的Cortex数据包划分为三种数据帧:第一种是包头数据帧(下称数据帧1),帧头是0x499602d2(即123456789),帧长是N1,包含包头和包信息的内容;第二种是有效数据帧(下称数据帧2),假设帧头是0xAABBCCDD,帧长是N2,其中帧头和帧信息的长度为Count1;第三种是包尾帧(下称数据帧3),帧头是0xb669fd2e(即-123456789),帧长是4。线程2逐个字节读取队列1的数据,判断是否是三种帧头中的一种,若是数据帧1则继续读取剩余的N1-4个字节数据,由于该帧不包含所需数据,对该数据帧不做处理,并将gAllCount加上N1;若是数据帧3则不需要继续读取数据,由于该帧不包含所需数据,对该数据帧不做处理,将gAllCount加上4;若是数据帧2则继续读取剩余的N2-4个字节数据,然后截取数据区的内容,长度为n。为了一次性获取完整的参考数据,并且能够方便修改生成参考的数据的算法,本专利技术先按照卫星生成数据的算法生成参考数据,再将参考数据放入队列2,最后根据需要取出长度为n的参考数据用于数据比对,若两者完全一致,则表明卫星数据正确,不做处理,将gAllCount加上N2;若两者有不一致的情况,则对每个字节进行一一比对,直到定位到错误数据,并保存此时已比对过的字节数Count2。gAllCount、Count1、Count2的和就是错误数据的位置,将参考数据的值、错误数据的值、错误数据的位置信息都记录到日志文件中,格式如下:数据比对错误|期望值:AA|实际值:BB|位置:12345数据比对错误|期望值:AA|实际值:BB|位置:22345数据比对错误|期望值:AA|实际值:BB|位置:32345完成比对本文档来自技高网...
一种针对Cortex数据格式的卫星测试数据比对方法

【技术保护点】
1.一种针对Cortex数据格式的卫星测试数据比对方法,其特征在于,使用文件存储Cortex数据,使用线程1读取文件将数据放入队列,使用线程2读取队列进行下一步数据处理;将Cortex数据包分解为三种数据帧,仅对有效数据帧进行进一步处理;使用队列存储生成的参考数据,在进行数据比对时,一次性从队列中取出完整的参考数据,与有效数据帧的数据区进行比对后,计算出错误数据的位置,并将参考数据的值、错误数据的值和错误数据的位置存储到日志文件。

【技术特征摘要】
1.一种针对Cortex数据格式的卫星测试数据比对方法,其特征在于,使用文件存储Cortex数据,使用线程1读取文件将数据放入队列,使用线程2读取队列进行下一步数据处理;将Cortex数据包分解为三种数据帧,仅对有效数据帧进行进一步处理;使用队列存储生成的参考数据,在进行数据比对时,一次性从队列中取出完整的参考数据,与有效数据帧的数据区进行比对后,计算出错误数据的位置,并将参考数据的值、错误数据的值和错误数据的位置存储到日志文件。2.如权利要求1所述的一种针对Cortex数据格式的卫星测试数据比对方法,其特征在于,所述Cortex数据包格式包含包头、包信息、有效数据帧和包尾。3.如权利要求1所述的一种针对Cortex数据格式的卫星测试数据比对方法,其特征在于,所述有效数据帧包含...

【专利技术属性】
技术研发人员:郑汉耕赵岩岩路媛媛江伟
申请(专利权)人:上海航天电子有限公司上海科学仪器厂
类型:发明
国别省市:上海,31

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

1