專利名稱:嵌入式多機系統(tǒng)文件自修復下載方法
技術領域:
本發(fā)明屬于電力系統(tǒng)自動化技術領域,涉及嵌入式多子機系統(tǒng)文件可自修復下載方法。
背景技術:
嵌入式系統(tǒng)是軟件和硬件的綜合體,以應用為中心、以計算機技術為基礎、軟件硬件可裁剪、適于應用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)。嵌入式系統(tǒng)中FPGA的使用需要使用配置程序。配置程序可以在線更改。傳統(tǒng)技術通過專用下載電纜將需下載的程序文件燒錄至存儲芯片。燒寫過程需要使用專用的下載工具,且需插拔單板,更換過程不方便。目前通常采用本地機以通信電纜鏈接嵌入式系統(tǒng)模塊,采用FTP(File Transfer Protocol)方式將程序文件下載到指定地址,完成系統(tǒng)的程序更新。缺乏必要的校驗措施、 不能自動修復下載過程中出現(xiàn)的異常,需要人為干預。其過程也是一對一的映射關系,不能實現(xiàn)分層分布系統(tǒng)中各單元的程序、文件下載需要。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術問題是提供一種嵌入式多子機系統(tǒng)文件的下載方法,可實現(xiàn)自動修復下載過程中出現(xiàn)的異常,無需人為干預。為解決上述問題,本發(fā)明提供一種嵌入式多機系統(tǒng)文件自修復下載方法,其特征在于,包括以下步驟1)主機CPU模件與主機前置模件鏈接后,通過“路由字節(jié)使用標識”、“轉發(fā)標識” 和“目標端口號”實現(xiàn)多機系統(tǒng)之間的內(nèi)部信息交互;2)前置模件依次對FPGA配置程序、應用程序及配置文件進行校驗,發(fā)現(xiàn)錯誤時不跳轉到相關應用中執(zhí)行,而是執(zhí)行底層程序等待程序更新以實現(xiàn)應用程序的自修復。前述的嵌入式多機系統(tǒng)文件自修復下載方法,其特征在于在所述步驟1)中,多機系統(tǒng)之間的內(nèi)部信息交互過程為11) CPU模件向子機模件發(fā)送信息時,將“路由字節(jié),,中的“路由字節(jié)使用標識,,置 1,并且指定“目標端口號”,主機前置模件接收到報文時,發(fā)現(xiàn)“路由字節(jié)使用標識”為1后, 將“轉發(fā)標識”置1,接著向指定的端口發(fā)送數(shù)據(jù),子機模件收到報文時,根據(jù)“路由字節(jié)使用標識”和“轉發(fā)標識”都為1,判別出該報文是給子機的,并且通過目標端口號確定所連接的端口 ;12)子機模件向CPU模件發(fā)送信息時,將“路由字節(jié)使用標識”填寫為0,主機前置模件接收該報文時,判別不是CPU發(fā)送的報文,由此判斷是需要發(fā)送到CPU模件的報文,因此將“路由字節(jié)使用標識”和“轉發(fā)標識”填寫為1,并且填寫接收到報文的端口號,CPU模件接收到報文后根據(jù)“路由字節(jié)使用標識”和“轉發(fā)標識”都為1,判別該報文為子機模件發(fā)送;
13)主機前置模件向CPU發(fā)送報文時,將“路由字節(jié)使用標識”和“轉發(fā)標識”都填寫為0,CPU模件收到報文,若“路由字節(jié)使用標識”和“轉發(fā)標識”都為0,則判別該報文為由主機前置模件發(fā)送。前述的嵌入式多機系統(tǒng)文件自修復下載方法,其特征在于在所述步驟幻中,具體包括以下步驟21) CPU模件在上電后先進行FPGA程序校核、下載和固化,向FPGA模件發(fā)送配置信息CRC碼,F(xiàn)PGA模件在收到該報文后,將下發(fā)的CRC碼和當前配置的CRC進行核對如果相同,就將CRC碼發(fā)送給CPU模件;如果不同,則向CPU模件發(fā)送請求配置的報文,CPU模件如果收到FPGA模件發(fā)送的CRC,就進入下一工作流程,否則進入配置流程;22)再依次對應用程序、配置文件進行步驟21)操作;23)如果FPGA程序、應用程序、配置文件三個部分中的任意一部分被更新過,那么前置模件重新啟動接著再次校核各程序模塊,在校核成功后執(zhí)行更新后的程序,CPU模件重新進行一次配置核對,如果三個部分均未更新,即均未進入配置流程,CPU模件控制模塊進入工作狀態(tài)。前述的嵌入式多機系統(tǒng)文件自修復下載方法,其特征在于在所述步驟23)中,如果在應用程序升級過程中發(fā)生意外斷電或升級未成功的情況,在重新上電后,底層程序會發(fā)現(xiàn)FPGA程序、應用程序模塊無效,此時就不跳轉到應用程序中執(zhí)行,而是直接等待CPU模件下載配置流程,在CPU模件下載配置后,應用程序模塊就完全修復了。本發(fā)明的作用是通過以太網(wǎng)鏈接、報文傳遞的方式實現(xiàn)本地機與嵌入式多機系統(tǒng)間文件傳輸,并通過CRC檢驗和每幀報文返回校驗的相互結合方式,在傳輸過程出現(xiàn)異常時,可以自動重新修復有誤數(shù)據(jù)簡化下載的過程,提高下載的成功率。
圖1正常流程時程序狀態(tài)轉換圖。圖2修復損壞的程序時的狀態(tài)圖。
具體實施例方式1.多機系統(tǒng)的通信技術實現(xiàn)多機系統(tǒng)之間的通信通過“路由字節(jié)使用標識”、“轉發(fā)標識,,和“目標端口號”實現(xiàn)內(nèi)部之間的信息交互。該方法可以實現(xiàn)對主機及多層子機的程序及其它文件下載。
權利要求
1 一種嵌入式多機系統(tǒng)文件自修復下載方法,其特征在于,包括以下步驟1)主機CPU模件和主機前置模件鏈接后,通過“路由字節(jié)使用標識”、“轉發(fā)標識”和“目標端口號”實現(xiàn)多機系統(tǒng)之間的內(nèi)部信息交互;2)CPU模件依次對FPGA配置程序、應用程序及配置文件進行校驗,前置模件發(fā)現(xiàn)錯誤時不跳轉到相關應用中執(zhí)行,而是執(zhí)行底層程序等待程序更新以實現(xiàn)應用程序的自修復。
2.根據(jù)權利要求1所述的嵌入式多機系統(tǒng)文件自修復下載方法,其特征在于在所述步驟1)中,多機系統(tǒng)之間的內(nèi)部信息交互過程為IDCPU模件向子機模件發(fā)送信息時,將“路由字節(jié)使用標識”置1,并且指定“目標端口號”,主機前置模件接收到報文時,發(fā)現(xiàn)“路由字節(jié)使用標識”為1后,將“轉發(fā)標識”置1,接著向指定的端口發(fā)送數(shù)據(jù),子機模件收到報文時,根據(jù)“路由字節(jié)使用標識”和“轉發(fā)標識” 都為1,判別出該報文是給子機的,并且通過目標端口號確定所需鏈接的端口 ;12)子機模件向CPU模件發(fā)送信息時,將“路由字節(jié)使用標識”填寫為0,主機前置模件接收該報文時,判別不是CPU發(fā)送的報文,由此判斷是需要發(fā)送到CPU模件的報文,因此將 “路由字節(jié)使用標識”和“轉發(fā)標識”填寫為1,并且填寫接收到報文的端口號,CPU模件接收到報文后根據(jù)“路由字節(jié)使用標識”和“轉發(fā)標識”都為1,判別該報文為子機模件發(fā)送;13)主機前置模件向CPU發(fā)送報文時,將“路由字節(jié)使用標識”和“轉發(fā)標識”都填寫為 0,CPU模件收到報文,若“路由字節(jié)使用標識”和“轉發(fā)標識”都為0,根據(jù)判別該報文為由主機前置模件發(fā)送。
3.根據(jù)權利要求1所述的嵌入式多機系統(tǒng)文件自修復下載方法,其特征在于在所述步驟2)中,具體包括以下步驟21)CPU模件在上電后先進行FPGA程序校核、下載和固化,向FPGA模件發(fā)送配置信息 CRC碼,F(xiàn)PGA模件在收到該報文后,將下發(fā)的CRC碼和當前配置的CRC進行核對如果相同, 就將CRC碼發(fā)送給CPU模件;如果不同,則向CPU模件發(fā)送請求配置的報文,CPU模件如果收到FPGA模件發(fā)送的CRC,就進入下一工作流程,否則進入配置流程;22)再依次對應用程序、配置文件進行步驟21)操作;23)如果FPGA程序、應用程序、配置文件三個部分中的任意一部分被更新過,那么FPGA 模件重新啟動接著再次校核各程序模塊,在校核成功后執(zhí)行更新后的程序,CPU模件重新進行一次配置核對,如果三個部分均未更新,即均未進入配置流程,CPU模件控制模塊進入工作狀態(tài)。
4.根據(jù)權利要求3所述的嵌入式多機系統(tǒng)文件自修復下載方法,其特征在于在所述步驟23)中,如果在應用程序升級過程中發(fā)生意外斷電或升級未成功的情況,在重新上電后,底層程序會發(fā)現(xiàn)FPGA程序、應用程序模塊無效,此時就不跳轉到應用程序中執(zhí)行,而是直接等待CPU模件下載配置流程,在CPU模件下載配置后,應用程序模塊就完全修復了。
全文摘要
本發(fā)明公開了一種嵌入式多機系統(tǒng)文件可自修復下載方法,CPU模件與主機前置模件鏈接后,通過“路由字節(jié)”、“轉發(fā)標識”和“目標端口號”實現(xiàn)多機系統(tǒng)之間的內(nèi)部信息交互。CPU模件分別對進行FPGA程序、應用程序、配置文件進行CRC校核、下載和固化,傳輸過程中采用每幀返回校驗方式,若未收到確認報文,則自動重新發(fā)送,若多次失敗,則提示相關告警信息,在FPGA配置程序、應用程序、配置文件三個部分核對、下載、固化完成后,F(xiàn)PGA模件重新啟動并再次校核程序后執(zhí)行更新后的程序。本發(fā)明中當下載過程出現(xiàn)異常后,在裝置最新上電后可以自動修復因傳輸過程中造成數(shù)據(jù)不完整、不正確的程序文件。
文檔編號H04L1/00GK102158304SQ201010584858
公開日2011年8月17日 申請日期2010年12月13日 優(yōu)先權日2010年12月13日
發(fā)明者丁泉, 余華武, 蘭金波, 葉品勇, 姚亮, 鄧潔清, 陳新之, 魏建功 申請人:國電南京自動化股份有限公司