當前位置:首頁 > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀]針對大型分布式監(jiān)控系統(tǒng)遠程終端的嵌入式系統(tǒng)軟件遠程在線升級和維護問題,提出一種基于通用無線分組業(yè)務(wù)(General Packet Radio Service,GPRs)的嵌入式系統(tǒng)軟件的遠程在線升級方案,該方案采用GPRS、應(yīng)答機制與斷點續(xù)傳技術(shù),保證數(shù)據(jù)遠程無線傳輸?shù)臏蚀_性和可靠性,應(yīng)用RAM分區(qū)技術(shù)和IAP技術(shù)實現(xiàn)系統(tǒng)軟件的在線升級。實踐證明,該設(shè)計方案具有在線升級成功率高、速度快的特點,已成功應(yīng)用于南京航道局的航標自動監(jiān)測系統(tǒng)中。

0 引 言
    隨著電子技術(shù)、計算機技術(shù)和通信技術(shù)的迅猛發(fā)展,嵌入式系統(tǒng)已經(jīng)廣泛應(yīng)用于工業(yè)、軍事、通信、信息家電等領(lǐng)域,但是面對新技術(shù)的不斷涌現(xiàn)和對系統(tǒng)功能、性能以及規(guī)模要求的不斷提高,開發(fā)者必須能夠針對客戶的需求及時對系統(tǒng)進行升級或維護,以延長系統(tǒng)使用周期,改善系統(tǒng)性能,增強系統(tǒng)適應(yīng)性。
    傳統(tǒng)的嵌入式系統(tǒng)升級方式通常由維護人員到達設(shè)備現(xiàn)場,開箱重寫或者更換FLASH存儲部件,當設(shè)備數(shù)目龐大并且分布范圍廣泛時,這種升級維護方式的工作量將非常大,而且耗費的時間長、成本高。近年來通過以太網(wǎng)和在FLASH上建立TFFS文件系統(tǒng)的方法,能很好地解決批量升級的問題。但對于野外偏遠地區(qū)或海上等有線網(wǎng)絡(luò)無法到達的地方,此方法也難以實現(xiàn)。
    在此提出基于GPRS的嵌入式系統(tǒng)軟件遠程在線升級方案,利用GPRS網(wǎng)絡(luò)無需現(xiàn)場布線和“實時在線”、“按量計費”、“快捷登錄”、“高速傳輸”的特點,只要遠程終端在移動公網(wǎng)覆蓋的范圍內(nèi),均可實現(xiàn)升級數(shù)據(jù)的遠程傳輸;為了克服無線網(wǎng)絡(luò)相對有線網(wǎng)絡(luò)因地形或環(huán)境等因素造成誤碼或掉線的不足,采用應(yīng)答機制與斷點續(xù)傳技術(shù),確保數(shù)據(jù)傳輸?shù)臏蚀_性和可靠性;通過對嵌入式芯片內(nèi)部FLASH存儲器的存儲空間進行劃分和升級文件傳輸?shù)臄?shù)據(jù)格式進行定義,再利用IAP技術(shù)實現(xiàn)系統(tǒng)軟件的在線升級,較好地解決了數(shù)量龐大并且分布范圍較廣的設(shè)備在線升級或維護的問題。

1 系統(tǒng)結(jié)構(gòu)
    系統(tǒng)結(jié)構(gòu)如圖1所示,由服務(wù)器和遠程終端組成,其中遠程終端包括基于ARM內(nèi)核的嵌入式控制芯片(以下簡稱ARM芯片)和GPRS Modem模塊,兩者之間通過RS 232總線連接;服務(wù)器與遠程終端通過GPRS進行通信。用戶需要升級遠程終端時,首先將服務(wù)器端的升級標志位置1,通過GPRS將升級標志位傳給遠程終端,遠程終端上電后將自動檢測升級標志位,若標志位為1表示需要升級,否則不升級。然后,服務(wù)器將升級文件通過GPRS透明的下載到遠程終端,實現(xiàn)數(shù)據(jù)的傳輸及更新,從而達到遠程終端的嵌入式系統(tǒng)軟件的在線升級的目的。

2 遠程終端軟件升級的關(guān)鍵技術(shù)
2.1 FLASH存儲器編程

    遠程終端的升級主要是對ARM芯片內(nèi)部FLASH存儲器的數(shù)據(jù)進行擦除及下載,目前很多ARM芯片支持多種方式對FLASH進行編程,ARM芯片內(nèi)部FLAsH存儲器的編程有JTAG,ISP和IAP三種方式:JTAG編程主要用于產(chǎn)品開發(fā)期的調(diào)試;ISP需要提供一定的硬件資源和中止應(yīng)用軟件的運行,適用于便攜式設(shè)備的升級;IAP與ISP非常相似.主要區(qū)別是IAP允許在應(yīng)用程序正常運行的情況下,對FLASH存儲器中另外一段程序進行讀/寫操作,甚至可以控制對某段、某頁的讀/寫操作,為數(shù)據(jù)存儲和固件的自動升級帶來了極大的靈活性。該方案通過GPRS網(wǎng)絡(luò)傳輸升級文件的程序代碼,利用ARM內(nèi)部的FLASH存儲器及其IAP編程,實現(xiàn)終端的嵌入式系統(tǒng)軟件的遠程無線在線升級。有關(guān)IAP的命令碼、狀態(tài)碼和命令詳解以及IAP功能的詳細應(yīng)用見參考文獻。
2.2 遠程終端的程序設(shè)計
   
為了在線升級,將ARM芯片內(nèi)部FLASH存儲器按圖2所示劃分為啟動區(qū)、用戶代碼跳轉(zhuǎn)區(qū)、用戶代碼1區(qū)和用戶代碼2區(qū)。其中啟動區(qū)用于存放系統(tǒng)初始化和啟動代碼,用戶代碼跳轉(zhuǎn)區(qū)用于存放跳轉(zhuǎn)到相應(yīng)用戶代碼區(qū)的指令.用戶代碼1區(qū)和用戶代碼2區(qū)用于交替存放當前終端正在執(zhí)行的用戶代碼和升級的用戶代碼。若當前終端執(zhí)行的用戶程序存放在1區(qū),則將接收到的升級程序存放到2區(qū);待升級程序接收結(jié)束后,更改用戶代碼跳轉(zhuǎn)區(qū)的指令,使其指向升級程序,即用戶代碼2區(qū);此后用戶代碼2區(qū)的程序成為當前終端指向的用戶程序,而用戶代碼1區(qū)則用于下次升級代碼的存放區(qū)。
    遠程終端上電后首先進入啟動區(qū)進行系統(tǒng)的初始化;接著終端從片外的E2PROM中讀取升級配置,包括升級標志位、已接收到的最后一個數(shù)據(jù)包的ID等。若終端處于升級狀態(tài),則如圖3所示,向服務(wù)器發(fā)所要升級數(shù)據(jù)的指令,而且指令中將包含終端上次已接收到的最后一個數(shù)據(jù)包的ID,這樣可以避免已接收的數(shù)據(jù)包的重復(fù)發(fā)送,并實現(xiàn)續(xù)傳的功能。終端從GPRS網(wǎng)絡(luò)接收數(shù)據(jù)包后對數(shù)據(jù)包進行解析和校驗判斷,并與服務(wù)器形成一問一答的應(yīng)答機制。FLASH中進行數(shù)據(jù)編程的最小單位是頁(512個字節(jié)),當接收到的升級數(shù)據(jù)達到1頁后.通過IAP進行編程。如果當前運行的用戶程序代碼在1區(qū),則把升級數(shù)據(jù)保存到2區(qū),否則保存到1區(qū)。編程成功后,將最后一條數(shù)據(jù)包的ID保存到E2PROM中。所有升級數(shù)據(jù)發(fā)送結(jié)束并編程成功后,通過IAP修改用戶代碼跳轉(zhuǎn)區(qū)的指令,使遠程終端運行新的升級代碼。

3 服務(wù)器端的軟件設(shè)計
3.1 升級文件傳輸?shù)臄?shù)據(jù)格式
   
為了達到快速準確升級的目的,首先對原始的升級代碼(Intel Hex文件)進行打包,然后加人相應(yīng)的數(shù)據(jù)包ID號和校驗碼,并定義數(shù)據(jù)包長度≤256個字節(jié),以適應(yīng)G:PRS通信方式對數(shù)據(jù)包長度的要求,避免出現(xiàn)頻繁掉線和發(fā)送不出去的問題。具體的數(shù)據(jù)包格式如下:數(shù)據(jù)包格式:PacklD+起始地址+長度+數(shù)據(jù)+校驗碼;PackID:一個完整的數(shù)據(jù)包為一個記錄,下一個數(shù)據(jù)包的記錄號自動加1;起始地址:燒寫數(shù)據(jù)的FLASH首地址。即數(shù)據(jù)部分中包含的第一條數(shù)據(jù)的記錄地址+線性擴展地址;長度:該包數(shù)據(jù)部分的字節(jié)數(shù);數(shù)據(jù):同一個擴展線性地址記錄內(nèi)且地址連續(xù)的數(shù)據(jù)記錄的數(shù)據(jù)域。當讀到一個擴展線性地址記錄號后,將此擴展線性地址記錄號內(nèi)的數(shù)據(jù)區(qū)域打包成256個字節(jié)之內(nèi)的數(shù)據(jù)包,超過256個字節(jié)或讀到下一個擴展線性記錄號時則另起一個新的數(shù)據(jù)包;校驗碼:CRC循環(huán)冗余校驗碼。
3.2 服務(wù)器端主要程序流程
   
服務(wù)器端主要程序流程圖如圖4和圖5所示。服務(wù)器先把升級文件的路徑配置完畢,并將要升級的目標程序代碼按照第3.1節(jié)所示的數(shù)據(jù)包格式進行打包。并對每個數(shù)據(jù)包進行編號。

    接著如圖4所示,服務(wù)器發(fā)送升級指令,并通過GPRS網(wǎng)絡(luò)透明傳輸?shù)竭h程終端。如果當前運行的用戶程序代碼在1區(qū),則將2區(qū)升級數(shù)據(jù)發(fā)送給遠程終端,否則將2區(qū)升級數(shù)據(jù)發(fā)送給遠程終端。由于地形和環(huán)境因素的影響,GPRS網(wǎng)絡(luò)在遠程通信過程中可能出現(xiàn)阻塞或斷開的情況。
    如果服務(wù)器在一定的時間內(nèi)沒有收到遠程終端的應(yīng)答信號,則重發(fā),如果三次重發(fā)失敗則保存成功接收到的數(shù)據(jù)塊ID號和數(shù)據(jù)校驗碼,進入斷點續(xù)傳。升級文件傳輸完畢則發(fā)送跳轉(zhuǎn)指令,使遠程終端執(zhí)行新的程序代碼。
3.3 服務(wù)器端西己置表
   
服務(wù)器端升級配置表中重要字段的配置如下:
    這些字段將服務(wù)器和遠程終端緊密地聯(lián)系起來,使得編程思路更加清晰,Update ID標志了用戶程序目前所在存儲區(qū);Update User Zone為升級做好文件配置準備工作,LastOrder為斷點續(xù)傳做好準備,保證整個程序的緊密性以及可靠性。

4 結(jié) 語
    該方案采用應(yīng)答機制、斷點續(xù)傳、CRC校驗等技術(shù),充分利用ARM芯片內(nèi)部FLASH存儲器資源,通過GPRS網(wǎng)絡(luò),實現(xiàn)對ARM嵌入式終端的系統(tǒng)軟件進行遠程在線升級,解決了大型分布式監(jiān)控系統(tǒng)遠程嵌入式終端系統(tǒng)軟件的在線升級和維護問題。該方案已經(jīng)成功地應(yīng)用在南京航道局的航標自動監(jiān)測系統(tǒng)中,該系統(tǒng)有600多盞安裝有嵌入式終端的航標燈,對該系統(tǒng)進行在線升級僅耗時20 min,且一次性升級成功。實踐證明,該方案的實施可有效降低工程復(fù)雜度,縮短升級時間,節(jié)約升級、維護成本,同時具有升級成功率高和升級速度快的特點。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉