本發明專利技術涉及一種儀表軟件升級方法,所述儀表的控制芯片為雙核心架構芯片,所述雙核心架構芯片包括第一核心和第二核心,第一核心通過第二核心與外部進行通信。該方法中,升級工具獲取新版本軟件的燒寫鏡像,并對燒寫鏡像數據進行處理得到升級包文件;第二核心與升級工具建立通訊連接,并接收所述升級包文件;第一核心分段接收數據包后進行兩次校驗,校驗完成后,第一核心執行升級任務,對儀表軟件進行升級。通過本方法,只需用戶通過有線或無線方式建立汽車儀表與升級工具間的通訊連接,即可完成軟件上的更新同時極大程度保證了車載儀表的安全性和穩定性,進而保護了用戶的財產安全。全。全。
【技術實現步驟摘要】
一種儀表軟件升級方法
[0001]本專利技術涉及軟件升級
,具體涉及一種儀表軟件升級方法。
技術介紹
[0002]目前技術的發展日新月異,用戶對儀表系統的顯示的要求越來越高。在車輛出廠之前,汽車儀表的軟件以固化的形式在存儲芯片之中,在拆裝儀表之前是無法對存儲芯片內的數據進行更新的。因此在已售車型上對軟件進行更新是一件十分困難的事情,需要將車輛進行召回,經過層層運轉到工廠拆機后再進行刷寫或者更換。目前的環境下需要一個操作簡單,只需用戶前往指定點即可完成軟件上的更新。然而在這種更新方式存在很多不安全的因素,而且當前環境下部分正在使用的升級系統的數據傳輸方式采用明文傳輸,被截獲的數據包可以被第三方修改后仍可使用,或則升級包被第三方破解或誤修改后的損壞導致升級失敗或異常。
技術實現思路
[0003]本專利技術針對現有技術中存在的技術問題,提供一種儀表軟件升級方法,能夠安全的對儀表內存儲芯片數據進行更新。
[0004]本專利技術解決上述技術問題的技術方案如下:一種儀表軟件升級方法,所述儀表的控制芯片為雙核心架構芯片,所述雙核心架構芯片包括第一核心和第二核心,第一核心通過第二核心與外部進行通信,該方法包括:
[0005]升級工具獲取新版本軟件的燒寫鏡像,并對燒寫鏡像數據進行處理得到升級包文件;
[0006]第二核心與升級工具建立通訊連接,并接收所述升級包文件;所述第二核心包括第一緩沖區和第二緩沖區,第二核心將接收的升級包文件先存入所述第一緩沖區內,當第一緩沖區滿時,則將第一緩沖區內的數據轉存到第二緩沖區內,同時請求第一核心接收存入第二緩沖區的數據;
[0007]第一核心包括第三緩沖區、第四緩沖區和第五緩沖區,第一核心收到第二核心發送的數據接收請求后,接收第二緩沖區內存儲的數據存入第三緩沖區;當第三緩沖區數據滿時,則將數據拷貝到第四緩沖區內,第四緩沖區的大小為升級包分段大小,第四緩沖區滿時對數據進行校驗,數據經過校驗后存入第五緩沖區,第五緩沖區在完整數據包存入后對數據包進行二次校驗,校驗完成后,第一核心執行升級任務,對儀表軟件進行升級。
[0008]進一步的,所述第一緩沖區設置在第二核心的內存中,第二緩沖區設置在第一核心與第二核心的共享內存中,所述第三緩沖區與第四緩沖區設置在第一核心的內存中,所述第五緩沖區設置在存儲設備中。
[0009]進一步的,所述第一核心收到第二核心發送的數據接收請求后,從第二緩沖區中取出通信協議中指定偏移量和指定大小的數據拷貝到第三緩沖區中。
[0010]進一步的,該方法還包括,在第一核心執行升級任務之前,儀表管理程序通過檢測
當前儀表事件,判斷當前儀表是否屬于安全的狀態,若在安全狀態的情況下,則允許第一核心執行升級任務否則拒絕本次升級。
[0011]進一步的,第一核心在對升級包數據進行兩次校驗時,任意一次校驗結果異常,則中斷本次升級任務。
[0012]進一步的,二次校驗完成后,第一核心將數據接收完成的消息通過第二核心發送給升級工具,結束數據傳輸任務。
[0013]進一步的,第一核心執行升級任務,包括:
[0014]利用軟件隔離的方式將存儲設備劃分成A/B插槽的形式,其中一個為活動插槽,另一個為非活動插槽;
[0015]將當前正在運行的插槽拷貝到非活動插槽,讀取第五緩沖區中存儲的完整升級包,通過升級包的文件協議獲取升級包中需要升級模塊的數量,并對各個模塊數據依次進行解壓,解壓后進行數據校驗,與文件協議中存儲的校驗碼進行比較,數據無誤的情況下將升級數據寫入備份插槽的指定偏移量,覆蓋掉舊版本數據。
[0016]進一步的,升級任務完成后,通過修改引導區域的標志位,使當前啟動的插槽設置為非活動插槽,將非活動插槽設置為活動插槽。
[0017]進一步的,所述儀表的控制芯片還包括MCU核心,所述MCU負責CAN通訊,通過GTS建立和所述升級工具的通訊,接收升級工具發送的數據,對數據進行解密和校驗,并通過雙路SPI協議與所述第二核心進行交互。
[0018]進一步的,對燒寫鏡像數據進行處理得到升級包文件,包括:
[0019]根據升級包文件格式對燒寫鏡像數據進行異構排布,生成二進制文件;
[0020]將生成的二進制文件轉換成多個S
?
Record格式文件;
[0021]對所述多個S
?
Record格式文件進行加密,得到包含多個加密后的S
?
Record格式文件的升級包文件。
[0022]本專利技術的有益效果是:1、通過本方法,無需對待升級車輛進行召回、拆機、刷寫或者更換。只需用戶通過有線或無線方式建立汽車儀表與升級工具間的通訊連接,即可完成軟件上的更新。
[0023]2、本升級方法對數據的安全性做到每次操作關鍵數據后均進行了校驗操作,極大程度保證了車載儀表的安全性和穩定性,進而保護了用戶的財產安全。
[0024]3、升級包文件制作時,加密后生成多個S
?
Record格式文件,一方面提高數據安全性,另一方面生成多個文件在數據傳輸時可以采用斷點續傳等策略,提高數據傳輸效率。
附圖說明
[0025]圖1為本專利技術實施例提供的一種儀表軟件升級方法示意圖。
具體實施方式
[0026]以下結合附圖對本專利技術的原理和特征進行描述,所舉實例只用于解釋本專利技術,并非用于限定本專利技術的范圍。
[0027]如圖1所示,本專利技術實施例提供一種儀表軟件升級方法,包括以下步驟:
[0028]步驟S101:軟件發行商發布版本后,會向外界提供存儲介質的燒寫鏡像,及在可選
條件下的證書組。
[0029]其中鏡像應該包含了汽車儀表的2D顯示程序、3D顯示程序、儀表管理程序、儀表性能控制程序等。
[0030]步驟S102:燒寫鏡像通過配置文件的形式進行內部解析、重組、壓縮并打包,根據升級包文件格式對數據進行異構排布形成新的后綴名文件。該程序將會裝載進自動化集成系統中,通過每次集成中產生的配置信息以及所需程序配置,進行系統級別的集中生產出所需的二進制升級包文件。將包含車載儀表的機種、升級包軟件版本、更新軟件版本信息、硬件版本以及集成時間等信息。
[0031]其中機種為升級包所面向的指定車型儀表;升級包軟件本版本為當前所使用的升級包制作軟件的版本信息,作將在儀表升級程序內部所識別;更新軟件版本信息是指車載儀表的版本信息,用于在儀表升級程序內部是識別是否為可升級版本和記錄升級信息等。
[0032]具體實施中,由于數據量龐大,為將傳輸過程耗時減少,數據將會通過LZMA(Lempel
?
Ziv
?
Markov chain
?
Algiorithm)壓縮技術進行壓縮。可將升級包的體積壓縮75%。
[0033]最后將生成的二進制文件將轉換成S
?
Record格式文件。
[0034]S
?...
【技術保護點】
【技術特征摘要】
1.一種儀表軟件升級方法,所述儀表的控制芯片為雙核心架構芯片,所述雙核心架構芯片包括第一核心和第二核心,第一核心通過第二核心與外部進行通信,其特征在于,該方法,包括:升級工具獲取新版本軟件的燒寫鏡像,并對燒寫鏡像數據進行處理得到升級包文件;第二核心與升級工具建立通訊連接,并接收所述升級包文件;所述第二核心包括第一緩沖區和第二緩沖區,第二核心將接收的升級包文件先存入所述第一緩沖區內,當第一緩沖區滿時,則將第一緩沖區內的數據轉存到第二緩沖區內,同時請求第一核心接收存入第二緩沖區的數據;第一核心包括第三緩沖區、第四緩沖區和第五緩沖區,第一核心收到第二核心發送的數據接收請求后,接收第二緩沖區內存儲的數據存入第三緩沖區;當第三緩沖區數據滿時,則將數據拷貝到第四緩沖區內,第四緩沖區的大小為升級包分段大小,第四緩沖區滿時對數據進行校驗,數據經過校驗后存入第五緩沖區,第五緩沖區在完整數據包存入后對數據包進行二次校驗,校驗完成后,第一核心執行升級任務,對儀表軟件進行升級。2.根據權利要求1所述的方法,其特征在于,所述第一緩沖區設置在第二核心的內存中,第二緩沖區設置在第一核心與第二核心的共享內存中,所述第三緩沖區與第四緩沖區設置在第一核心的內存中,所述第五緩沖區設置在存儲設備中。3.根據權利要求1所述的方法,其特征在于,所述第一核心收到第二核心發送的數據接收請求后,從第二緩沖區中取出通信協議中指定偏移量和指定大小的數據拷貝到第三緩沖區中。4.根據權利要求1所述的方法,其特征在于,還包括,在第一核心執行升級任務之前,儀表管理程序通過檢測當前儀表事件,判斷當前儀表是否屬于安全的狀態,若在安全狀態的情況下,則允許第一核心執行升級任務否則拒絕本次升級。5.根據權利要求1所...
【專利技術屬性】
技術研發人員:張龍,肖洋林,彭鉦皓,雷鑫,
申請(專利權)人:電裝光庭汽車電子武漢有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。