新四季網

基於乙太網的程序固化方法

2023-07-28 21:57:46

基於乙太網的程序固化方法
【專利摘要】本發明涉及一種基於乙太網的程序固化方法,包括以下步驟:1】被加載端初始化:2】加載端與被加載端建立網絡連接,完成同步:3】加載端將待固化文件加載到被加載端:4】被加載端根據文件加載信息表調用寫Flash驅動程序將待固化文件逐一固化進Flash存儲器中。本發明利用乙太網傳輸速率較串口等介質更快的特性,將待固化文件快速地從加載端加載到被加載端,有效縮短文件加載所需時間,提高程序固化效率。
【專利說明】基於乙太網的程序固化方法
【技術領域】
[0001]本發明屬於計算機軟體應用領域,具體涉及一種基於乙太網的程序固化方法。
【背景技術】
[0002]嵌入式軟體在開發調試完畢後,需要通過固化軟體將其固化到目標機的Flash存儲器中。固化過程,主要分為將待固化文件從加載端(一般為PC機)加載到被加載端(目標機)和被加載端將待固化文件寫入Flash存儲器兩個步驟。將待固化文件從加載端加載到被加載端,可以採用不同的傳輸介質,如串口、乙太網、AFDX總線等。在不同的傳輸介質條件下,文件加載過程所耗費的時間也各不相同。比如採用串口作為傳輸介質,文件傳輸速率低,在固化大文件時,需要耗費很長時間,固化效率低下。因此,採用一種高速率的傳輸介質,能夠縮短加載時間,提高固化效率。

【發明內容】

[0003]本發明提供一種基於乙太網的程序固化方法,利用乙太網傳輸速率較串口等介質更快的特性,將待固化文件快速地從加載端加載到被加載端,有效縮短文件加載所需時間,提聞程序固化效率。
[0004]本發明的技術解決方案:
[0005]基於乙太網的程序固化方法,其特殊之處在於:包括以下步驟: [0006]I】被加載端初始化:
[0007]啟動作業系統,初始化文件加載器,啟動文件加載任務,建立通訊埠,等待接收來自加載端的命令請求;
[0008]2】加載端與被加載端建立網絡連接,完成同步:
[0009]3】加載端將待固化文件加載到被加載端:
[0010]3.1】加載端向被加載端發送多個加載數據包;每個加載數據包包括一個加載命令字、一個待固化文件ID、一個待固化文件總塊數、加載數據包所對應的當前塊號、加載數據包所包含的有效數據、有效數據長度及校驗碼;所述校驗碼為加載端根據有效數據計算得出;根據待固化文件的總塊數將對應待固化文件分成多個數據塊,並用塊號對多個數據塊依次編號;
[0011]3.2】被加載端逐一接收加載數據包:
[0012]3.2.1】被加載端接收第一個加載數據包,根據接收到的第一個加載數據包中文件總塊數為第一個待固化文件申請相應內存空間,取得第一個待固化文件內存空間的起始地址;
[0013]將第一個加載數據包中的有效數據存儲到當前塊號所對應的內存空間中;
[0014]被加載端的文件加載器將待固化文件ID、內存空間起始地址寫入到文件加載信息表中;
[0015]3.2.2】繼續接收加載數據包,判斷當前所接收到的加載數據包中待固化文件ID與上一個加載數據包中的待固化文件ID是否一致:
[0016]如所接收到的加載數據包中待固化文件ID與上一個加載數據包中的待固化文件ID 一致,則屬於上一個待固化文件的加載數據包,將所接收到的當前加載數據包中包含的有效數據存儲到當前塊號所對應的內存空間中;
[0017]如所接收到的加載數據包中待固化文件ID與上一個加載數據包中的待固化文件ID不一致,則屬於下一個待固化文件的加載數據包,根據接收到的當前加載數據包中文件總塊數為當前待固化文件申請相應內存空間,取得當前待固化文件內存空間的起始地址;
[0018]將當前加載數據包中的有效數據存儲到當前塊號所對應內存空間中;
[0019]被加載端的文件加載器將待固化文件的ID、內存空間起始地址寫入到文件加載信息表中;
[0020]同時將累計得到的上一個待固化文件的有效數據總長度寫入到文件加載信息表的相應位置;
[0021]3.2.3】回到步驟3.2.2】,直至接收不到加載數據包;
[0022]3.3】向加載端返回加載命令響應包;
[0023]3.4】加載端發送燒寫數據包:
[0024]3.4.1】加載端向被加載端發送多個燒寫數據包,所述燒寫數據包中包含待固化文件ID以及相應的Flash存儲器固化地址;
[0025]3.4.2】被加載端接收到所有燒寫數據包後,根據各個燒寫數據包中待固化文件ID將其對應的Flash存儲器固化地址添加到文件加載信息表中;
[0026]4】被加載端根據文件加載信息表調用寫Flash驅動程序將待固化文件逐一固化進Flash存儲器中。
[0027]在步驟4】之後還包括校驗步驟:
[0028]將已經固化在Flash存儲器中的固化文件的內容與內存空間中的待固化文件內容逐一進行比對,並將比對結果返回給加載端。
[0029]上述步驟I】的具體步驟為
[0030]1.1】被加載端啟動作業系統;
[0031]1.2】文件加載器初始化,將文件加載信息表清零;
[0032]1.3】打開一個基於連接的目標機套接字;
[0033]1.4】將目標機套接字與其地址綁定;
[0034]1.5】使能目標機套接字連接;
[0035]1.6】等待接收加載端命令請求。
[0036]上述步驟2】的具體步驟為:
[0037]2.1】加載端初始化到 被加載端的套接字連接;
[0038]2.2】加載端向被加載端發送同步請求數據包;
[0039]2.3】被加載端接收同步請求數據包,執行同步命令處理程序,並將同步完成的信息封裝進同步命令響應包反饋回加載端;
[0040]2.4】加載端接收到被加載端返回的同步命令響應包後,確認同步完成;
[0041]還包括將有效數據存儲到內存空間之前進行有效數據校驗步驟:
[0042]被加載端根據有效數據計算一個比對校驗碼,將比對校驗碼與加載數據包中的對應校驗碼進行比較,如果一致,則存儲有效數據;如果不一致,則向加載端返回錯誤提示。
[0043]本發明所具有的優點:
[0044]1、本發明採用乙太網傳輸能顯著提高程序固化效率,以固化一個16M大小的二進位文件為例,採用基於串口的固化方法,需要I個小時,而採用本方法,只需6分鐘,時間縮短到原來的十分之一。
[0045]2、本發明的加載過程安全可靠,確定性強。
【專利附圖】

【附圖說明】
[0046]圖1基於乙太網的的程序固化流程圖。
【具體實施方式】
[0047]基於乙太網的程序固化方法具體實施步驟如下:
[0048]步驟1:被加載端啟動作業系統,初始化文件加載器,啟動文件加載任務,建立通訊埠,等待接收來自加載端的命令請求。
[0049]本步驟實現流程如下:
[0050]1.1)被加載端啟動作業系統;
[0051]1.2)文件加載器初始化,將文件加載信息表清零;
[0052]1.3)打開一個基於連接的目標機套接字;
[0053]1.4)將目標機套接字與其地址綁定;
[0054]1.5)使能目標機套接字連接;
[0055]1.6)等待接收加載端命令請求;
[0056]步驟2:加載端與被加載端建立網絡連接,完成同步。
[0057]本步驟實現流程如下:
[0058]2.1)加載端初始化到被加載端的套接字連接;
[0059]2.2)加載端向被加載端發送同步請求數據包;
[0060]2.3)被加載端接收同步請求數據包,執行同步命令處理程序,並將同步完成的信息封裝進同步命令響應包反饋回加載端;
[0061]2.4)加載端接收到被加載端返回的同步命令響應包後,確認同步完成。
[0062]步驟3:加載端將待固化文件加載到被加載端。
[0063]本步驟實現流程如下:
[0064]3.1】加載端向被加載端發送多個加載數據包;每個加載數據包包括一個加載命令字、一個待固化文件ID、一個待固化文件總塊數、加載數據包所對應的當前塊號、加載數據包所包含的有效數據、有效數據長度及校驗碼;所述校驗碼根據有效數據計算得出;
[0065]3.2】被加載端逐一接收加載數據包:
[0066]3.2.1】被加載端接收第一個加載數據包,根據接收到的第一個加載數據包中文件總塊數為第一個待固化文件申請相應內存空間,取得第一個待固化文件內存空間的起始地址;
[0067]將第一個加載數據包中的有效數據存儲到當前塊號所對應的內存空間中; [0068]被加載端的文件加載器將待固化文件ID、內存空間起始地址寫入到文件加載信息表中;
[0069]3.2.2】繼續接收加載數據包,判斷當前所接收到的加載數據包中待固化文件ID與上一個加載數據包中的待固化文件ID是否一致:
[0070]如所接收到的加載數據包中待固化文件ID與上一個加載數據包中的待固化文件ID 一致,則屬於上一個待固化文件的加載數據包,將所接收到的當前加載數據包中包含的有效數據存儲到當前塊號所對應的內存空間中;
[0071]如所接收到的加載數據包中待固化文件ID與上一個加載數據包中的待固化文件ID不一致,則屬於下一個待固化文件的加載數據包,根據接收到的當前加載數據包中文件總塊數為當前待固化文件申請相應內存空間,取得當前待固化文件內存空間的起始地址;
[0072]將當前加載數據包中的有效數據存儲到當前塊號所對應內存空間中;
[0073]被加載端的文件加載器將待固化文件的ID、內存空間起始地址寫入到文件加載信息表中;
[0074]同時將累計得到的上一個待固化文件的有效數據總長度寫入到文件加載信息表的相應位置;
[0075]3.2.3】回到步驟3.2.2】,直至接收不到加載數據包;
[0076]3.3】向加載端返回加載命令響應包;
[0077]3.4]加載端發送燒寫數據包:
[0078]3.4.1】加載端向被加載端發送多個燒寫數據包,所述燒寫數據包中包含待固化文件ID以及相應的Flash存儲器固化地址;
[0079]3.4.2】被加載端接收到所有燒寫數據包後,根據各個燒寫數據包中待固化文件ID將其對應的Flash存儲器固化地址添加到文件加載信息表中;
[0080]步驟4:被加載端將待固化文件固化進Flash並校驗。
[0081]被加載端根據文件加載信息表調用寫Flash驅動程序將待固化文件逐一固化進Flash存儲器中。
[0082]校驗步驟:將已經固化在Flash存儲器中的固化文件的內容與內存空間中待固化文件內容逐一進行比對,並 將比對結果返回給加載端。
【權利要求】
1.基於乙太網的程序固化方法,其特徵在於:包括以下步驟: 1】被加載端初始化: 啟動作業系統,初始化文件加載器,啟動文件加載任務,建立通訊埠,等待接收來自加載端的命令請求; 2】加載端與被加載端建立網絡連接,完成冋步; 3】加載端將待固化文件加載到被加載端: 3.1】加載端向被加載端發送多個加載數據包;每個加載數據包包括一個加載命令字、一個待固化文件ID、一個待固化文件總塊數、加載數據包所對應的當前塊號、加載數據包所包含的有效數據、有效數據長度及校驗碼;所述校驗碼為加載端根據有效數據計算得出; 3.2】被加載端逐一接收加載數據包: 3.2.1】被加載端接收第一個加載數據包,根據接收到的第一個加載數據包中文件總塊數為第一個待固化文件申請相應內存空間,取得第一個待固化文件內存空間的起始地址;將第一個加載數據包中的有效數據存儲到當前塊號所對應的內存空間中; 被加載端的文件加載器將待固化文件ID、內存空間起始地址寫入到文件加載信息表中; 3.2.2】繼續接收加載數據包,判斷當前所接收到的加載數據包中待固化文件ID與上一個加載數據包中的待固化文件ID是否一致: 如所接收到的加載數據包中待固化文件ID與上一個加載數據包中的待固化文件ID —致,則屬於上一個待固化文件的加載數據包,將所接收到的當前加載數據包中包含的有效數據存儲到當前塊號所對應的內存空間中; 如所接收到的加載數據包中待固化文件ID與上一個加載數據包中的待固化文件ID不一致,則屬於下一個待固化文件的加載數據包,根據接收到的當前加載數據包中文件總塊數為當前待固化文件申請相應內存空間,取得當前待固化文件內存空間的起始地址;將當前加載數據包中的有效數據存儲到當前塊號所對應內存空間中;被加載端的文件加載器將待固化文件的ID、內存空間起始地址寫入到文件加載信息表中;同時將累計得到的上一個待固化文件的有效數據總長度寫入到文件加載信息表的相應位置; 3.2.3]回到步驟3.2.2】,直至接收不到加載數據包; 3.3】向加載端返回加載命令響應包; 3.4】加載端發送燒寫數據包: 3.4.1】加載端向被加載端發送多個燒寫數據包,所述燒寫數據包中包含待固化文件ID以及相應的Flash存儲器固化地址; 3.4.2】被加載端接收到所有燒寫數據包後,根據各個燒寫數據包中待固化文件ID將其對應的Flash存儲器固化地址添加到文件加載信息表中; 4】被加載端根據文件加載信息表調用寫Flash驅動程序將待固化文件逐一固化進Flash存儲器中。
2.根據權利要求1所述的基於乙太網的程序固化方法,其特徵在於:在步驟4】之後還包括校驗步驟: 將已經固化在Flash存儲器中的固化文件的內容與內存空間中的待固化文件內容逐一進行比對,並將比對結果返回給加載端。
3.根據權利要求1或2所述的基於乙太網的程序固化方法,其特徵在於:所述步驟I】的具體步驟為 1.1】被加載端啟動fe作系統; 1.2】文件加載器初始化,將文件加載信息表清零; 1.3】打開一個基於連接的目標機套接字; 1.4】將目標機套接字與其地址綁定; 1.5】使能目標機套接字連接; 1.6】等待接收加載端命令請求。
4.根據權利要求3所述的基於乙太網的程序固化方法,其特徵在於:所述步驟2】的具體步驟為: 2.1】加載端初始化到被加載端的套接字連接; 2.2】加載端向被加載端發送同步請求數據包; 2.3】被加載端接收同步請求數據包,執行同步命令處理程序,並將同步完成的信息封裝進同步命令響應包反饋回加載端; 2.4】加載端接收到被加載端返回的同步命令響應包後,確認同步完成。
5.根據權利要求4所述的基於乙太網的程序固化方法,其特徵在於:還包括將有效數據存儲到內存空間之前進行有效數據校驗步驟: 被加載端根據接收到的有效數據計算一個比對校驗碼,將比對校驗碼與加載數據包中的對應校驗碼進行比較,如果一致,則存儲有效數據;如果不一致,則向加載端返回錯誤提/Jn ο
【文檔編號】G06F9/445GK103902306SQ201210575427
【公開日】2014年7月2日 申請日期:2012年12月26日 優先權日:2012年12月26日
【發明者】陳福, 李運喜, 任曉瑞, 趙根學, 邸海濤, 鍾珊, 張曉紅, 李向東 申請人:中國航空工業集團公司第六三一研究所

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀