[发明专利]一种星载嵌入式软件代码自校验纠错方法在审
申请号: | 201611065610.5 | 申请日: | 2016-11-28 |
公开(公告)号: | CN106776089A | 公开(公告)日: | 2017-05-31 |
发明(设计)人: | 王杰;李雅琼;李杨;朱浩然;关贵注 | 申请(专利权)人: | 北京遥测技术研究所;航天长征火箭技术有限公司 |
主分类号: | G06F11/07 | 分类号: | G06F11/07 |
代理公司: | 中国航天科技专利中心11009 | 代理人: | 马全亮 |
地址: | 100076 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 软件 代码 校验 纠错 方法 | ||
1.一种星载嵌入式软件代码自校验纠错方法,基于DSP和FPGA实现,其特征在于包括以下步骤:
(1)将星载嵌入式软件代码划分为主程序代码和任务功能代码,并分别设置在DSP中不同的存储空间内;
(2)令所述星载嵌入式软件代码加载运行,主程序代码对任务功能代码进行定时校验,通过设置看门狗监控主程序代码的运行状态;
(3)判断是否达到预设的校验时间,如果已经达到,则主程序代码对任务功能代码累积计算一个字节的异或和,得到初始校验结果,之后执行步骤(4);否则返回执行步骤(2);
(4)将初始校验结果进行三模冗余处理;
(5)启动下一次校验过程,即再次执行步骤(2)~(4),得到新的校验结果与初始校验结果进行比较,若一致,则重复执行步骤(5),不一致则执行步骤(6);
(6)判断是否已经连续三次校验过程得到的新校验结果与初始校验结果不同,若连续三次不同,则执行步骤(7),否则返回执行步骤(5);
(7)判定任务功能代码异常,并生成复位申请,提交给FPGA或通过FPGA报告上一级系统;
(8)FPGA或上一级系统根据预先设定的权限,向DSP发出复位指令,程序重新加载,恢复正常运行。
2.根据权利要求1所述的一种星载嵌入式软件代码自校验纠错方法,其特征在于:所述步骤(3)主程序代码对任务功能代码累积计算一个字节的异或和,具体为:任务功能代码的存储空间地址范围为i~i+n;i,n为正整数,且i>0,i+n小于DSP的存储空间大小;
主程序代码对地址i处的字节和地址i+1处的字节进行异或和计算,得到结果Ri+1,再将Ri+1和地址i+2处的字节进行异或和计算,得到结果Ri+2,以此类推,直到将Ri+n-1和地址i+n处的字节进行异或和计算,得到结果Ri+n,即初始校验结果。
3.根据权利要求1所述的一种星载嵌入式软件代码自校验纠错方法,其特征在于:所述预设的校验时间设置为0.1ms~1ms。
4.根据权利要求1所述的一种星载嵌入式软件代码自校验纠错方法,其特征在于:所述步骤(8)FPGA或上一级系统根据预先设定的权限具体指:地面上注的工作参数,是否允许FPGA或上一级系统在接收到复位申请之后立刻向DSP发出复位指令或者延时向DSP发出复位指令。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京遥测技术研究所;航天长征火箭技术有限公司,未经北京遥测技术研究所;航天长征火箭技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611065610.5/1.html,转载请声明来源钻瓜专利网。