CN103955411A - 一种星载大容量fpga程序在轨上注及配置方法 - Google Patents
一种星载大容量fpga程序在轨上注及配置方法 Download PDFInfo
- Publication number
- CN103955411A CN103955411A CN201410215998.7A CN201410215998A CN103955411A CN 103955411 A CN103955411 A CN 103955411A CN 201410215998 A CN201410215998 A CN 201410215998A CN 103955411 A CN103955411 A CN 103955411A
- Authority
- CN
- China
- Prior art keywords
- subdata
- fpga
- program
- verification
- ground
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Logic Circuits (AREA)
Abstract
一种星载大容量FPGA程序在轨上注及配置方法,通过将编译好的程序利用星地间上传至卫星上,在卫星上进行存储,并能根据遥控指令进行智能配置,使星载FPGA工作于地面要求的模式。本发明具有能够实时调整FPGA程序,根据地面要求动态调整工作内容的特点,使在轨FPGA程序灵活更改,提高在轨利用率,并能有效提高抗辐照能力。
Description
技术领域
本发明涉及一种星载大容量FPGA程序在轨上注及配置方法,通过将FPGA程序加入纠错信息通过地面上注给星上控制部件,并接收地面发送的遥控指令,根据指令进行相应的FPGA程序配置,从而提高FPGA器件的灵活性并且提高器件的抗辐照能力。
背景技术
随着电子技术的发展,尤其是大规模高性能可编程器件的出现,卫星上采用器件越来越灵活。目前星载处理单元越来越多的选用高性能大规模FPGA器件作为主要运算单元,集成度越来越高,功能越来越复杂,其作用不可替代,但是受到卫星条件限制,FPGA所用的程序必须一次固化,不可更改,无法根据任务的调整或者程序存在隐患以及由于程序在轨受到太空辐照的影响造成的单粒子效应进行二次修改,程序存在隐患及单粒子效应影响卫星部件的使用,造成卫星部件的使用周期缩短或功能受限,严重的可能造成卫星部件失效。
同时星地间传输能力有限,并且FPGA的程序从地面上注到卫星相应部件的程序容易受到各种情况造成的干扰,并且大容量FPGA程序的规模比较大,需要长时间(以天为单位)占用上行通信通道,为了保证上行通道不受到上注的影响,其他部件能正常的开展工作,需要采用灵活机智的上注策略来保证地面的程序能正确的上注到星上的相应部件。
当对FPGA进行配置时,如果不能配置成功,需要给出各种因素的判断结果,因为地面人员无法进行直接的操作来判断出错原因,必须通过有效手段来实时监控配置过程,由于上注一次的代价非常大,当程序存储介质受到外界因素造成误码,必须能准确的判断出数据发生错误的位置,告诉地面人员,从而可以只发送受到影响的数据给卫星部件,避免再次上注整个FPGA程序。
发明内容
本发明解决的技术问题是:克服现有技术存在的不足,提供一种在轨可重复更改软件的方法,解决在轨FPGA程序难以灵活配置的问题,提高系统的抗辐照能力和功能可扩展性。
本发明的技术方案是:一种星载大容量FPGA程序在轨上注及配置方法,步骤如下:
1)将地面FPGA编译完的待上注程序进行冗余校验处理,将冗余校验处理后的待上注程序分割为A1~An个子数据,其中n为正整数;
2)将分割后的第一个子数据A1上传至卫星上的内部存储器;
3)卫星对子数据A1进行校验,并将校验后的子数据A1存储在外部存储器中;
4)将存储在外部存储器中的子数据A1与存储在内部存储器当中的子数据A1进行比对,若比对均正确,则子数据A1的上注过程结束;若比对出现错误,则返回步骤2)重新将子数据A1上传给卫星上的内部存储器,并重复步骤3)、步骤4);
5)重复步骤2)-步骤4),对子数据A1至子数据An全部上注完成,并跳转至步骤6);
6)当接收到地面上传的配置开始指令时,将外部存储器中的每一个子数据读取进内部存储器中,对每一个子数据进行校验;若校验正确,则按照地面上传的配置指令要求对FPGA进行配置;若校验不正确,跳转至步骤7);
7)重复步骤2)-步骤4),对校验出错的子数据重新进行上注过程,上注过程结束后跳至步骤6)进行配置过程。
本发明与现有技术相比的优点在于:
(1)本发明能够实现在轨FPGA程序的在线重配置。通过对FPGA的程序重配置,可以根据需求改变FPGA器件完成的程序功能,从而扩展系统的处理功能;系统在FPGA器件受到单粒子效应影响时,通过在轨重配置,消除单粒子效应的影响,提高系统的抗辐照能力。
(2)本发明通过对上注的FPGA程序数据进行冗余纠错编码处理,提高上注程序的抗误码干扰能力。对上注的程序数据进行冗余纠错编码,数据上注完成后,对数据再进行校验解码,减少数据上注时带来的误码影响,提高上注程序的抗误码能力,增强提供的可靠性。
附图说明
图1为本发明上注过程流程图;
图2为本发明配置过程流程图。
具体实施方式
本发明涉及的硬件实现为反熔丝类型FPGA。地面生成的FPGA程序数据文件进行冗余校验编码处理,编码后的数据进行分割以适应上注及二次上注的需要。本发明所采用编码原则为能满足在轨卫星的资源需求,简单又能有效的起到冗余校验的作用。
本方法选用反熔丝FPGA作为控制单元包括解析、配置、通信、监测以及校验等功能,反熔丝FPGA,即采用反熔丝编程技术的FPGA,这类器件内部具有反熔丝阵列开关结构,反熔丝FPGA具有配置位非易失、低功耗、上电即运行等优点,可靠性高,抗辐照能力强等特点。
通信功能主要用于与地面控制中心进行数据、命令的实时沟通,将地面的指令及数据转换成部件识别的内容,将部件的状态已规定格式发送给地面,用以地面了解部件的工作状态。
解析功能主要用于实现对命令的正确解析,对数据的正确接收。
监测功能主要用于对被配置FPGA的状态进行监控。
校验功能主要是对接收到的地面上注的程序文件进行实时的校验是否正确,并将校验结果反馈给通信模块,另一方面在配置程序时对存储在外部存储器中的程序文件进行实时校验,并将校验结果反馈给通信模块。
配置功能主要是根据地面指令对被控制对象FPGA进行程序配置,根据FPGA规定的时序要求进行动态配置时序控制,当校验出错时,停止配置,等待地面上注正确程序后,再次发送配置指令。
如图1所示,FPGA程序整个上注配置的流程如下:地面将编译好的FPGA程序进行冗余校验编码,将冗余校验处理后的待上注程序分割为多个子数据;地面将分割后的文件按照规定格式发送给星上相应的部件设备,星上设备接收地面发送过来的数据及控制命令,对控制命令进行解析及执行,将接收的数据进行校验,并将校验后的数据存储在外部存储器中,为了确认数据存储的正确性,将存储在外部存储器中的数据再读出进行一次比较,上述操作均正确后,发送状态正确信息给地面,如果不正确,发送错误状态给地面要求地面再次发送该部分文件。当整个程序文件全部发送完毕后,地面发送上注结束的命令,星上设备接收到该指令后,结束上注过程。
如图2所示,FPGA程序在轨重配置流程如下:根据系统需要,在程序上注结束后地面可以发送配置FPGA指令给星上设备,当星上设备接收到配置指令后,根据地面指令要求配置对应FPGA的相应程序。当开始配置后,星上设备对存储在外部存储器中的数据文件进行校验,保证文件的正确性,当校验出错后告诉地面具体位置的数据文件遭到了破坏,需要重新上注相应的数据内容,同时配置操作结束。当校验数据没有问题时,按照FPGA的时序要求发送相应的控制指令及数据。配置完成后,发送指令告诉地面配置完成。同时监控是否FPGA配置成功,并将监控结果告诉地面。
本发明说明书中未作详细描述的内容属本领域技术人员的公知技术。
Claims (1)
1.一种星载大容量FPGA程序在轨上注及配置方法,其特征在于步骤如下:
1)将地面FPGA编译完的待上注程序进行冗余校验处理,将冗余校验处理后的待上注程序分割为A1~An个子数据,其中n为正整数;
2)将分割后的第一个子数据A1上传至卫星上的内部存储器;
3)卫星对子数据A1进行校验,并将校验后的子数据A1存储在外部存储器中;
4)将存储在外部存储器中的子数据A1与存储在内部存储器当中的子数据A1进行比对,若比对均正确,则子数据A1的上注过程结束;若比对出现错误,则返回步骤2)重新将子数据A1上传给卫星上的内部存储器,并重复步骤3)、步骤4);
5)重复步骤2)-步骤4),对子数据A1至子数据An全部上注完成,并跳转至步骤6);
6)当接收到地面上传的配置开始指令时,将外部存储器中的每一个子数据读取进内部存储器中,对每一个子数据进行校验;若校验正确,则按照地面上传的配置指令要求对FPGA进行配置;若校验不正确,跳转至步骤7);
7)重复步骤2)-步骤4),对校验出错的子数据重新进行上注过程,上注过程结束后跳至步骤6)进行配置过程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410215998.7A CN103955411A (zh) | 2014-05-21 | 2014-05-21 | 一种星载大容量fpga程序在轨上注及配置方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410215998.7A CN103955411A (zh) | 2014-05-21 | 2014-05-21 | 一种星载大容量fpga程序在轨上注及配置方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103955411A true CN103955411A (zh) | 2014-07-30 |
Family
ID=51332686
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410215998.7A Pending CN103955411A (zh) | 2014-05-21 | 2014-05-21 | 一种星载大容量fpga程序在轨上注及配置方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103955411A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107203399A (zh) * | 2017-06-01 | 2017-09-26 | 中国科学院长春光学精密机械与物理研究所 | 一种卫星在轨程序重注系统 |
CN107479999A (zh) * | 2017-07-28 | 2017-12-15 | 北京宇航系统工程研究所 | 一种在轨飞行器的任务管理的混合控制方法 |
CN107957972A (zh) * | 2017-10-30 | 2018-04-24 | 西安空间无线电技术研究所 | 一种基于fpga的在轨重构系统及方法 |
CN110297926A (zh) * | 2018-12-29 | 2019-10-01 | 中国科学院软件研究所 | 星载图像处理装置在轨配置方法 |
CN112540559A (zh) * | 2020-11-19 | 2021-03-23 | 国家卫星气象中心(国家空间天气监测预警中心) | 一种程序上注人工控制方法 |
CN115567510A (zh) * | 2022-09-13 | 2023-01-03 | 中国电子科技集团公司第十研究所 | 一种提高在轨文件上注有效性的方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101980161A (zh) * | 2010-11-01 | 2011-02-23 | 航天东方红卫星有限公司 | 一种星载计算机软件的在轨更新方法 |
CN102147733A (zh) * | 2010-02-10 | 2011-08-10 | 上海卫星工程研究所 | 使用1553b串行数据总线给星载远程终端计算机加载程序的方法 |
CN102354294A (zh) * | 2011-08-23 | 2012-02-15 | 西安空间无线电技术研究所 | 一种星载dsp芯片的空间单粒子翻转检测方法 |
CN102779079A (zh) * | 2011-05-12 | 2012-11-14 | 中国科学院空间科学与应用研究中心 | 一种用于长期在轨工作的星载sram型fpga的配置方法及系统 |
CN103116546A (zh) * | 2013-02-21 | 2013-05-22 | 北京控制工程研究所 | 一种卫星在轨大规模程序修改的地面自动验证系统 |
CN103164242A (zh) * | 2013-02-01 | 2013-06-19 | 中国人民解放军国防科学技术大学 | 卫星星务软件上注方法 |
CN103226484A (zh) * | 2013-04-15 | 2013-07-31 | 浙江大学 | 一种星载综合电子系统程序的在轨更新方法 |
CN103514176A (zh) * | 2012-06-21 | 2014-01-15 | 苏州工业园区新宏博通讯科技有限公司 | 一种智能终端的数据管理方法 |
CN103684688A (zh) * | 2013-11-26 | 2014-03-26 | 航天恒星科技有限公司 | 一种星载软件内存单粒子实时防护方法 |
-
2014
- 2014-05-21 CN CN201410215998.7A patent/CN103955411A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102147733A (zh) * | 2010-02-10 | 2011-08-10 | 上海卫星工程研究所 | 使用1553b串行数据总线给星载远程终端计算机加载程序的方法 |
CN101980161A (zh) * | 2010-11-01 | 2011-02-23 | 航天东方红卫星有限公司 | 一种星载计算机软件的在轨更新方法 |
CN102779079A (zh) * | 2011-05-12 | 2012-11-14 | 中国科学院空间科学与应用研究中心 | 一种用于长期在轨工作的星载sram型fpga的配置方法及系统 |
CN102354294A (zh) * | 2011-08-23 | 2012-02-15 | 西安空间无线电技术研究所 | 一种星载dsp芯片的空间单粒子翻转检测方法 |
CN103514176A (zh) * | 2012-06-21 | 2014-01-15 | 苏州工业园区新宏博通讯科技有限公司 | 一种智能终端的数据管理方法 |
CN103164242A (zh) * | 2013-02-01 | 2013-06-19 | 中国人民解放军国防科学技术大学 | 卫星星务软件上注方法 |
CN103116546A (zh) * | 2013-02-21 | 2013-05-22 | 北京控制工程研究所 | 一种卫星在轨大规模程序修改的地面自动验证系统 |
CN103226484A (zh) * | 2013-04-15 | 2013-07-31 | 浙江大学 | 一种星载综合电子系统程序的在轨更新方法 |
CN103684688A (zh) * | 2013-11-26 | 2014-03-26 | 航天恒星科技有限公司 | 一种星载软件内存单粒子实时防护方法 |
Non-Patent Citations (1)
Title |
---|
段星辉: ""一种提高星载软件可靠性的开发方法"", 《计算机工程》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107203399A (zh) * | 2017-06-01 | 2017-09-26 | 中国科学院长春光学精密机械与物理研究所 | 一种卫星在轨程序重注系统 |
CN107203399B (zh) * | 2017-06-01 | 2020-08-11 | 中国科学院长春光学精密机械与物理研究所 | 一种卫星在轨程序重注系统 |
CN107479999A (zh) * | 2017-07-28 | 2017-12-15 | 北京宇航系统工程研究所 | 一种在轨飞行器的任务管理的混合控制方法 |
CN107479999B (zh) * | 2017-07-28 | 2020-09-18 | 北京宇航系统工程研究所 | 一种在轨飞行器的任务管理的混合控制方法 |
CN107957972A (zh) * | 2017-10-30 | 2018-04-24 | 西安空间无线电技术研究所 | 一种基于fpga的在轨重构系统及方法 |
CN107957972B (zh) * | 2017-10-30 | 2021-10-01 | 西安空间无线电技术研究所 | 一种基于fpga的在轨重构系统及方法 |
CN110297926A (zh) * | 2018-12-29 | 2019-10-01 | 中国科学院软件研究所 | 星载图像处理装置在轨配置方法 |
CN112540559A (zh) * | 2020-11-19 | 2021-03-23 | 国家卫星气象中心(国家空间天气监测预警中心) | 一种程序上注人工控制方法 |
CN112540559B (zh) * | 2020-11-19 | 2021-11-23 | 国家卫星气象中心(国家空间天气监测预警中心) | 一种程序上注人工控制方法 |
CN115567510A (zh) * | 2022-09-13 | 2023-01-03 | 中国电子科技集团公司第十研究所 | 一种提高在轨文件上注有效性的方法 |
CN115567510B (zh) * | 2022-09-13 | 2024-04-26 | 中国电子科技集团公司第十研究所 | 一种提高在轨文件上注有效性的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103955411A (zh) | 一种星载大容量fpga程序在轨上注及配置方法 | |
CN107957972B (zh) | 一种基于fpga的在轨重构系统及方法 | |
US8484509B2 (en) | Radiation-hardened processing system | |
CN107678913B (zh) | 一种多功能可配置的抗单粒子辐射系统及方法 | |
KR102658847B1 (ko) | 고 데이터 무결성 처리 시스템 | |
US9493231B2 (en) | Flight control system command selection and data transport | |
US20180183657A1 (en) | Self-configuring fault-tolerant operational group | |
US20180241503A1 (en) | Systems and methods for space-based and hybrid distributed data storage | |
CN110489376B (zh) | 卫星整星硬件在轨重构框架系统及重构方法 | |
CN109491821A (zh) | 抗单粒子翻转的加固系统及方法 | |
CN107273240B (zh) | 一种星载相控阵tr组件单粒子翻转防护方法 | |
CN101937375B (zh) | 皮卫星中央处理器的代码、数据实时纠检错方法及装置 | |
Alvarez et al. | Increasing the capability of CubeSat-based software-defined radio applications | |
Hanafi et al. | FPGA-based secondary on-board computer system for low-earth-orbit nano-satellite | |
CN107153510A (zh) | 存储器控制器及用于管理存储器的方法 | |
CN104965743B (zh) | 一种mmc子模块软件程序在线升级方法、系统及mmc子模块 | |
Leppinen et al. | On-board data handling for ambitious nanosatellite missions using automotive-grade lockstep microcontrollers | |
KR102057523B1 (ko) | 위성 원격명령 전송 장치 및 방법 | |
Zeif et al. | The redundancy and fail-safe concept of the OPS-SAT payload processing platform | |
US8769387B1 (en) | System for configuring modular telemetry transponders | |
CN104035832A (zh) | 电子设备和数据校验方法 | |
Iwiński et al. | Remote software reprogramming in embedded systems | |
Matsumoto | Voyager Interstellar Mission: Challenges of flying a very old spacecraft on a very long mission | |
Bezerra et al. | An adaptive communications module for on-board computers of satellites | |
Zhang et al. | Design and implementation of the highly-reliable, low-cost housekeeping system in the ZDPS-1A pico-satellite |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140730 |