[發明專利]一種星載嵌入式軟件代碼自校驗糾錯方法在審
| 申請號: | 201611065610.5 | 申請日: | 2016-11-28 |
| 公開(公告)號: | CN106776089A | 公開(公告)日: | 2017-05-31 |
| 發明(設計)人: | 王杰;李雅瓊;李楊;朱浩然;關貴注 | 申請(專利權)人: | 北京遙測技術研究所;航天長征火箭技術有限公司 |
| 主分類號: | G06F11/07 | 分類號: | G06F11/07 |
| 代理公司: | 中國航天科技專利中心11009 | 代理人: | 馬全亮 |
| 地址: | 100076 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 嵌入式 軟件 代碼 校驗 糾錯 方法 | ||
技術領域
本發明涉及一種星載嵌入式軟件代碼自校驗糾錯方法,特別是一種針對星載嵌入式軟件中部分重要代碼的自校驗糾錯方法,屬星載數字電子技術領域。
背景技術
星載嵌入式軟件代碼在空間環境下易受到單粒子事件影響發生數據翻轉,從而導致軟件工作異常甚至產品功能失效。目前常用的提高軟件運行可靠性的措施有軟件代碼三模冗余、軟件看門狗等方法。全部代碼三模冗余對存儲空間要求大、冗余操作耗時長,部分代碼三模冗余覆蓋面有限,軟件看門狗僅對程序跑飛及喂狗段代碼錯誤起到監控作用,若上述措施均無效可采用斷電重啟恢復運行,但斷電操作往往因產品或系統在軌工作狀態無法實時進行。
發明內容
本發明解決的技術問題:克服現有技術的不足,提供了一種星載嵌入式軟件代碼自校驗糾錯方法,針對軟件任務功能(函數)代碼,解決了三模冗余、看門狗等軟件可靠性措施以及斷電重啟操作的局限性問題。
本發明的技術解決方案:
一種星載嵌入式軟件代碼自校驗糾錯方法,基于DSP和FPGA實現,包括以下步驟:
(1)將星載嵌入式軟件代碼劃分為主程序代碼和任務功能代碼,并分別設置在DSP中不同的存儲空間內;
(2)令所述星載嵌入式軟件代碼加載運行,主程序代碼對任務功能代碼進行定時校驗,通過設置看門狗監控主程序代碼的運行狀態;
(3)判斷是否達到預設的校驗時間,如果已經達到,則主程序代碼對任務功能代碼累積計算一個字節的異或和,得到初始校驗結果,之后執行步驟(4);否則返回執行步驟(2);
(4)將初始校驗結果進行三模冗余處理;
(5)啟動下一次校驗過程,即再次執行步驟(2)~(4),得到新的校驗結果與初始校驗結果進行比較,若一致,則重復執行步驟(5),不一致則執行步驟(6);
(6)判斷是否已經連續三次校驗過程得到的新校驗結果與初始校驗結果不同,若連續三次不同,則執行步驟(7),否則返回執行步驟(5);
(7)判定任務功能代碼異常,并生成復位申請,提交給FPGA或通過FPGA報告上一級系統;
(8)FPGA或上一級系統根據預先設定的權限,向DSP發出復位指令,程序重新加載,恢復正常運行。
所述步驟(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,即初始校驗結果。
所述預設的校驗時間設置為0.1ms~1ms。
所述步驟(8)FPGA或上一級系統根據預先設定的權限具體指:地面上注的工作參數,是否允許FPGA或上一級系統在接收到復位申請之后立刻向DSP發出復位指令或者延時向DSP發出復位指令。
本發明與現有技術相比的優點在于:
(1)星載嵌入式軟件通常采用三模冗余、軟件看門狗等措施來提高軟件運行的可靠性,有的軟件故障甚至需要通過重新上電加載才能恢復正常。全部代碼三模冗余對存儲空間要求大、冗余操作耗時長,部分代碼三模冗余覆蓋面有限,軟件看門狗僅對程序跑飛及喂狗段代碼錯誤起到監控作用,若上述措施均無效可采用斷電重啟恢復運行,但斷電操作往往因產品或系統在軌工作狀態無法實時進行。以上方法在使用上均存在一定的局限性。
(2)本發明提出的一種星載嵌入式軟件代碼自校驗糾錯方法,占用資源少、應用靈活,可以在產品不斷電的情況下,根據系統需要進行自主復位或由上一級進行復位操作,有效地提高了軟件代碼運行的可靠性、安全性。
附圖說明
圖1為本發明的工作原理示意圖;
圖2為本發明方法流程圖。
具體實施方式
本發明提出了一種星載嵌入式軟件代碼自校驗糾錯方法,對任務功能(函數)代碼進行循環累積校驗,根據校驗結果自主復位或向上一級系統申請復位,實現了在軌運行不斷電情況下的可恢復性,其原理如圖1所示。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京遙測技術研究所;航天長征火箭技術有限公司,未經北京遙測技術研究所;航天長征火箭技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201611065610.5/2.html,轉載請聲明來源鉆瓜專利網。





