一种在吊舱中实现大容量数据记录的方法

文档序号:8257825阅读:357来源:国知局
一种在吊舱中实现大容量数据记录的方法
【技术领域】
[0001]本发明涉及一种在吊舱中实现大容量数据记录的方法,适用于在吊舱实时嵌入式环境下实现大容量数据记录。
【背景技术】
[0002]嵌入式系统是随着计算机技术、微处理器技术、电子技术、通信技术、集成电路技术的发展而发展起来的,越来越广泛地运用在各种场合,包括汽车、航天、航空、军事装备等领域。同时,随着技术的发展,flash电子盘的使用也比较广泛,先前只是一般环境中使用,慢慢地也在实时嵌入式环境中使用。目前,飞机上一般都是采用在专门的机载设备中利用电子盘进行数据记录。在机载吊舱上,由于吊舱的实时性要求很高,如果既要完成本身的飞行任务,又要实时记录通讯数据,当数据量较大时,特别是既要记录通讯数据,又要记录图像数据时,原来的方法无法满足实时性要求。所以,目前其他吊舱上都没有进行大容量数据记录。

【发明内容】

[0003]为了解决大容量数据记录的实时性要求,本发明目的在于提供一种吊舱中实现大容量数据记录的方法。
[0004]综合各种因素考虑,首先排除利用操作系统提供的文件系统进行数据记录,改为直接访问电子盘的物理地址进行读写,而且使用汇编语言进行读写函数的编写,这是因为利用文件系统需要进行一系列的处理,比如逻辑地址与物理地址的映射转换,这样的时间开销大,在目前的硬件环境是不可能保证系统任务的执行时间。同时,为了满足系统多次加电记录不覆盖数据的要求,将电子盘的物理地址从使用上分成几个等同的分区,每次上电记录到不同的分区上。
[0005]为了实现上述目的,本发明采用如下技术方案:
一种在吊舱中实现大容量数据记录的方法,
A )、在该方法中设置了一个操作系统支持的环形缓冲区;
B)、在初始化的时候调用库函数为每路高速数据建立一个环形缓冲区;
C)、接着在主工作线程中,通过查询、搬移数据函数每个周期去查询高速RS422接口的寄存器状态,存贮寄存器半满将数据导入到环形缓冲区;
D)、周期查询环形缓冲区的数据情况,当其状态满足2K,就在主工作线程中调用写电子盘函数,将数据写入到电子盘。
[0006]所述环形缓冲区的大小为20K。
[0007]本发明的有益效果:
本发明通过直接访问电子盘的物理地址进行读写,使用汇编语言进行读写函数的编写,增加一个操作系统支持的环形缓冲区等方法,发明一种在实时嵌入式环境下实现大容量数据记录的方法,具有实时性高、数据记录准确等特性。
【附图说明】
[0008]图1为本发明的电子盘记录流程图;
图2为本发明程序控制流程图。
【具体实施方式】
[0009]下面结合附图对本发明进行详细描述:
本方案应用的吊舱系统是某型武器系统的一部分,主要功能是实现各个系统之间的传输以及数据记录。该系统包含四个具有各自功能的子系统。其中,中控机是其核心,控制管理系统内部各个子系统之间有序的协调工作,实现GJB289A、低速RS422和高速RS422等硬件接口的工作,并在工作过程中记录这些数据。
[0010]中控机主要配置参数如下:
CPU:选用 Intel MG80486DX 25 ?33MHz ;
存贮器:配置了 Flash存贮器、SRAM存贮器和EEPROM存贮器;
MBI接口:用来实现GJB289A数据总线通信输出,单通道、双余度;
422接口:用来实现低速422接口数据的通信,4路,速率可以通过软件设置,在该系统使用的速率为115.2K ;
高速422接口:用来实现高速422接口数据的通信,2路,传输速率不小于530K ; 电子盘:用来记录各种数据,容量1G,采用Flash芯片,内置了升温电路。
[0011]如图2,该方案在吊舱中实现大容量数据记录的方法:
A )、在该方法中设置了一个操作系统支持的环形缓冲区;
B)、在初始化的时候调用库函数为每路高速数据建立一个环形缓冲区;
C)、接着在主工作线程中,通过查询、搬移数据函数每个周期去查询高速RS422接口的寄存器状态,存贮寄存器半满将数据导入到环形缓冲区;
D)、周期查询环形缓冲区的数据情况,当其状态满足2K,就在主工作线程中调用写电子盘函数,将数据写入到电子盘。
[0012]所述环形缓冲区的大小为20K,比如,ppRngBufA=rngCreate (1024*20)。
[0013]附图2为程序流程图,在进行设计的时候,需要着重考虑将高速数据记录到电子盘的设计。由于该运行平台为单CPU系统,需要完成逻辑计算、RS422传输、高速数据传输和记录。RS422的传输速率为115.2K,需要传输的字节数为60几个,大约花在这方面的时间为5.874ms ;25ms周期任务和40ms的周期任务的逻辑计算等功能的运行时间大约4到5ms,因此用到两路高速数据采集、记录到电子盘的时间不能超过7ms,否则就不能满足系统设计的要求,也可能会影响任务的实时性。
[0014]经过试验和使用的测试验证以及完善修改,能满足该系统的要求,能保证系统的实时性。
【主权项】
1.一种在吊舱中实现大容量数据记录的方法,其特征在于: A )、在该方法中设置了 一个操作系统支持的环形缓冲区; B)、在初始化的时候调用库函数为每路高速数据建立一个环形缓冲区; C)、接着在主工作线程中,通过查询、搬移数据函数每个周期去查询高速RS422接口的寄存器状态,存贮寄存器半满将数据导入到环形缓冲区; D)、周期查询环形缓冲区的数据情况,当其状态满足2K,就在主工作线程中调用写电子盘函数,将数据写入到电子盘。
2.根据权利要求1所述的在吊舱中实现大容量数据记录的方法,其特征在于:所述环形缓冲区的大小为20K。
【专利摘要】本发明涉及一种在吊舱中实现大容量数据记录的方法,适用于在吊舱实时嵌入式环境下实现大容量数据记录。在该方法中设置了一个操作系统支持的环形缓冲区;在初始化的时候调用库函数为每路高速数据建立一个环形缓冲区;接着在主工作线程中,通过查询、搬移数据函数每个周期去查询高速RS422接口的寄存器状态,存贮寄存器半满将数据导入到环形缓冲区;周期查询环形缓冲区的数据情况,当其状态满足2K,就在主工作线程中调用写电子盘函数,将数据写入到电子盘。
【IPC分类】G06F12-06, G06F12-08, G06F3-06
【公开号】CN104571945
【申请号】CN201410691789
【发明人】李国丰, 余伏章, 陈国平, 袁广玉, 汪高峰, 严菡, 王利祥, 余奎, 徐琳, 胡亚昌, 张俊, 陈亮, 谢前进, 周龙, 徐历春, 万兴祥, 江涛, 谢晖
【申请人】江西洪都航空工业集团有限责任公司
【公开日】2015年4月29日
【申请日】2014年11月27日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1