System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于数据处理,涉及一种航天器fpga程序在轨重构方法和装置。
技术介绍
1、现场可编程门阵列(field programmable gate arrays,fpga)是一种可反复编程使用的信号处理器件,用户可通过改变配置信息对其功能进行定义,以满足使用要求。与传统的数字电路系统相比,fpga具有可编程、高集成度、高速度和高可靠性等优点,通过配置器件内部的逻辑功能和输入/输出端口,将原来电路板级的设计放在芯片中进行,提高了电路性能,降低了印刷电路板设计的工作量和难度,有效提高了设计的灵活性和效率。正是由于fpga的这些优点,fpga越来越多地被应用在了航天器设计中,常常被使用在高速数据处理和高速数据传输场景中。
2、由于目前航天器在轨寿命大幅提高、航天器任务也面临在轨升级的需求,因此fpga程序需要在轨整体维护,例如,在北斗三号卫星在轨运行过程中,其路由fpga已完成多次整体在轨维护,以实现大量新任务需求的在轨部署。
3、航天器常采用sram型fpga,其优点是可反复编程。配置程序存放在fpga外的flash存储器中,系统上电时,配置程序加载到fpga中完成硬件功能的定制化。本文中所说的fpga程序在轨维护实际上也就是将完整fpga程序由地面上注并烧写到flash存储器的过程。
4、当前,已有一些航天器fpga程序在轨维护方法。航天恒星科技有限公司提出的专利“fpga在轨维护方法及装置”(申请号cn201611172737.7)专利技术了一种有一定可靠性措施的fpga局部更改方法,然而
5、总结来看,在进行航天器fpga程序在轨维护过程中,专利技术人发现现有技术存在以下问题:
6、1、由于数据处理和传输的需求越来越复杂,fpga程序越来越大,已达到100mb量级,而程序烧写到flash过程相比较星地链路传输速率较慢,更加之低轨航天器每圈次可与地面站通信时间较短,因此fpga整体的在轨维护要持续多个圈次,长达数小时至十几小时,占用地面站时间较长,给地面操作带来很多不便。
7、2、功能复杂的fpga程序规模较大,在从地面站到星上flash存储器的传输过程中常会出现个别bit错误,在传统的fpga或软件在轨维护方法中,出现的bit错误难查找、难纠正。
8、3、fpga程序在轨重构过程中,错误分包数据下传常常需要占用o(n)的遥测资源,不适用于遥测资源受限的航天器,不利于地面或星上完成错误数据的查找和重传修复。
技术实现思路
1、有鉴于此,本专利技术提供了一种适用于低轨航天器大规模fpga程序的在轨重构方法,应用于地面站,包括:
2、步骤1,将fpga程序分割成多个固定大小的数据块,加入校验信息,生成上注指令;所述上注指令中包括数据块号和所述数据块的内容;
3、步骤2,通过星地链路将所有数据块发送至卫星,对卫星反馈的上注数据块差错信息,重新上注对应缺失的数据块,直至所有的对应块都上注完成;其中所述卫星采用滑动窗口式数据块缺失检测;
4、步骤3,上注所述fpga程序的校验指令,该校验指令中包括完整fpga数据校验和数据长度。
5、本专利技术还提出一种适用于低轨航天器大规模fpga程序的在轨重构方法,应用于卫星设备,包括如下步骤:
6、步骤1,接收地面站上注数据块的上注指令,所述上注指令中包括数据块号和所述数据块的内容;
7、步骤2,对所述数据块内容进行校验,校验正确的所述数据块暂存在ram缓存区里,根据块号记录下正确接收信息;其中,采用滑动窗口式数据块缺失检测;
8、步骤3,将缺失的数据块反馈给地面站,并继续接收所述地面站对所述缺失的数据块,直至所有数据块被正确接收并暂存在ram缓存区;
9、步骤4,接收地面站上注的fpga程序的数据校验指令,该校验指令中包括完整fpga数据校验和数据长度,对所述fpga程序进行整体校验,如校验不正确,则返回到步骤2;
10、步骤5,对fpga数据存储flash进行整片擦除,执行步骤6;
11、步骤6,将ram缓存区中数据按扇区写入到flash里,软件根据flash返回的写入信息记录下正确写入扇区,采用滑动窗口式扇区缺失检测;待全部数据尝试写入一遍后,如有扇区数据缺失,对不能正确写入的扇区擦除,并对数据重复尝试写入,直到所有数据正确写入;
12、步骤7,对地面站上注的完整fpga程序进行数据校验,读出flash中数据进行校验,若校验正确,则fpga数据在轨重构成功。
13、特别地,采用滑动窗口式数据块缺失检测包括:在内存中开辟固定长度数组记录数据块的扇区是否接收正确,每一比特记录一个数据块扇区信息,窗口前沿指向数据块的扇区号最小的缺失块的扇区号,窗口后沿指向最新接收数据块的扇区号,每存储一个数据块的扇区号,窗口后沿加一,每确认一个正确块的扇区号,窗口前沿更新,向后寻找下一个缺失块的扇区号。
14、特别地,如果同样的fpga程序需要上注到多份flash里作为备份使用,则转至步骤5,继续对备份flash擦除并写入。
15、本专利技术还提出一种适用于低轨航天器大规模fpga程序的在轨重构的地面站,包括:
16、上注指令生成模块,用于将fpga程序分割成多个固定大小的数据块,加入校验信息,生成上注指令;所述上注指令中包括数据块号和所述数据块的内容;
17、数据块上注模块,用于通过星地链路将所有数据块发送至卫星,对卫星反馈的上注数据块差错信息,重新上注对应缺失的数据块,直至所有的对应块都上注完成;其中所述卫星采用滑动窗口式数据块缺失检测;
18、fpga程序校验指令上注模块,用于上注所述fpga程序的校验指令,该校验指令中包括完整fpga数据校验和数据长度。
19、本专利技术还提出一种适用于低轨航天器大规模fpga程序的在轨重构的卫星设备,包括:
20、接收上注指令装置,用于接收地面站上注数据块的上注指令,所述上注指令中包括数据块号和所述数据块的内容;
21、数据块内容校验模本文档来自技高网...
【技术保护点】
1.一种适用于低轨航天器大规模FPGA程序的在轨重构方法,应用于地面站,其特征在于,包括:
2.一种适用于低轨航天器大规模FPGA程序的在轨重构方法,应用于卫星设备,其特征在于,包括如下步骤:
3.如权利要求1或2所述的适用于低轨航天器大规模FPGA程序的在轨重构方法,其特征在于:采用滑动窗口式数据块缺失检测包括:在内存中开辟固定长度数组记录数据块的扇区是否接收正确,每一比特记录一个数据块扇区信息,窗口前沿指向数据块的扇区号最小的缺失块的扇区号,窗口后沿指向最新接收数据块的扇区号,每存储一个数据块的扇区号,窗口后沿加一,每确认一个正确块的扇区号,窗口前沿更新,向后寻找下一个缺失块的扇区号。
4.如权利要求2所述的适用于低轨航天器大规模FPGA程序的在轨重构方法,其特征在于:如果同样的FPGA程序需要上注到多份FLASH里作为备份使用,则转至步骤5,继续对备份FLASH擦除并写入。
5.一种适用于低轨航天器大规模FPGA程序的在轨重构的地面站,其特征在于,包括:
6.一种适用于低轨航天器大规模FPGA程序的在轨重构的卫星设
7.如权利要求5或6所述的适用于低轨航天器大规模FPGA程序的卫星设备,其特征在于:采用滑动窗口式数据块缺失检测包括:在内存中开辟固定长度数组记录数据块的扇区是否接收正确,每一比特记录一个数据块扇区信息,窗口前沿指向数据块的扇区号最小的缺失块的扇区号,窗口后沿指向最新接收数据块的扇区号,每存储一个数据块的扇区号,窗口后沿加一,每确认一个正确块的扇区号,窗口前沿更新,向后寻找下一个缺失块的扇区号。
8.如权利要求6所述的适用于低轨航天器大规模FPGA程序的卫星设备,其特征在于:如果同样的FPGA程序需要上注到多份FLASH里作为备份使用,则转至FLASH擦除模块,继续对备份FLASH擦除并写入。
...【技术特征摘要】
1.一种适用于低轨航天器大规模fpga程序的在轨重构方法,应用于地面站,其特征在于,包括:
2.一种适用于低轨航天器大规模fpga程序的在轨重构方法,应用于卫星设备,其特征在于,包括如下步骤:
3.如权利要求1或2所述的适用于低轨航天器大规模fpga程序的在轨重构方法,其特征在于:采用滑动窗口式数据块缺失检测包括:在内存中开辟固定长度数组记录数据块的扇区是否接收正确,每一比特记录一个数据块扇区信息,窗口前沿指向数据块的扇区号最小的缺失块的扇区号,窗口后沿指向最新接收数据块的扇区号,每存储一个数据块的扇区号,窗口后沿加一,每确认一个正确块的扇区号,窗口前沿更新,向后寻找下一个缺失块的扇区号。
4.如权利要求2所述的适用于低轨航天器大规模fpga程序的在轨重构方法,其特征在于:如果同样的fpga程序需要上注到多份flash里作为备份使用,则转至步骤5,继续对备份flash擦除并写...
【专利技术属性】
技术研发人员:乔梁,吴伟,徐勇,燕洪成,贾卫松,王帅,刘博,王丹,董芳芳,栾申申,詹盼盼,汪路元,杨丽君,牛嘉祥,王铎,
申请(专利权)人:北京空间飞行器总体设计部,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。