欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

差分升級(jí)方案(上)—全量升級(jí)vs差分升級(jí)的主要特點(diǎn)比較

小華半導(dǎo)體有限公司 ? 來源:小華半導(dǎo)體有限公司 ? 2024-01-18 17:06 ? 次閱讀

1、需求源起

MCU固件升級(jí)可以通過編程器、調(diào)試器或其他設(shè)備輔助進(jìn)行操作,但這種升級(jí)方式主要應(yīng)用于產(chǎn)品研發(fā)評(píng)估及量產(chǎn)應(yīng)用階段。產(chǎn)品量產(chǎn)或設(shè)備部署后,若面對(duì)大規(guī)模設(shè)備升級(jí),把產(chǎn)品返廠做升級(jí)將面臨拆機(jī)、人工燒錄等繁瑣流程,費(fèi)時(shí)費(fèi)力。隨著物聯(lián)網(wǎng)的發(fā)展,越來越多的產(chǎn)品具備無線遠(yuǎn)程通信能力,產(chǎn)生了更多通過遠(yuǎn)程通訊接口進(jìn)行固件升級(jí)的需求。

2、升級(jí)步驟

固件升級(jí),就是當(dāng)前設(shè)備運(yùn)行的舊固件有系統(tǒng)漏洞或者要在現(xiàn)有設(shè)備添加新功能時(shí),將設(shè)備中的舊固件更新為新的固件,使設(shè)備運(yùn)行的程序滿足新的功能需求,從MCU內(nèi)部層面來看就是新固件覆蓋舊固件,如圖1所示。

89249be2-b5d8-11ee-8b88-92fbcf53809c.png

圖1固件升級(jí)示意圖

獲取新固件:通過NBIoT、WIFI、Bluetooth、LoRa、ZigBee等通信協(xié)議定期查詢新版本或者接收升級(jí)請(qǐng)求。

覆蓋舊固件:將新固件數(shù)據(jù)分塊寫入舊固件所在Flash覆蓋舊固件。

3、全量升級(jí)

通常情況下,在MCU中運(yùn)行的具有升級(jí)功能的程序需要具備兩個(gè)可獨(dú)立運(yùn)行的程序,分別為BootLoader引導(dǎo)程序和實(shí)現(xiàn)產(chǎn)品功能的App應(yīng)用程序。一般情況下BootLoader程序燒錄后不會(huì)再更新,修復(fù)漏洞或者添加功能時(shí)升級(jí)的均為App應(yīng)用程序。Flash全量升級(jí)分區(qū)示意圖如圖2所示。固件可以通過App或者BootLoader進(jìn)行接收,如圖3所示。

8936d4ec-b5d8-11ee-8b88-92fbcf53809c.png

圖2Flash分區(qū)示意圖

894460a8-b5d8-11ee-8b88-92fbcf53809c.png

圖3 固件接收方式分類

3.1 App接收固件

設(shè)備在運(yùn)行時(shí)App查詢到有新版本固件或者收到升級(jí)請(qǐng)求時(shí),先通過無線通信接口下載新的固件。一般有兩種方式更新固件:一種運(yùn)行App1時(shí),將新的固件分包接收并下載存至App2 Flash分區(qū),下載完成后跳轉(zhuǎn)至App2 分區(qū)運(yùn)行新的固件(MCU需要支持雙BANK運(yùn)行),升級(jí)示意圖如圖4所示;第二種跳轉(zhuǎn)Bootloader程序執(zhí)行固件遷移,將App2固件按塊寫入App1 Flash分區(qū),待固件遷移無誤后再跳轉(zhuǎn)至App1 Flash分區(qū)運(yùn)行。

89574c5e-b5d8-11ee-8b88-92fbcf53809c.png

圖4 具有備份區(qū)的固件升級(jí)示意圖

3.2BootLoader接收固件

設(shè)備在運(yùn)行App時(shí)查詢到有新版本固件或者收到升級(jí)請(qǐng)求時(shí),跳轉(zhuǎn)Bootloader程序?qū)⑿碌墓碳职邮詹⑾螺d至App Flash分區(qū)。下載完成時(shí),舊固件被新固件覆蓋,然后再跳轉(zhuǎn)App Flash分區(qū)運(yùn)行,示意圖如圖5所示。

89658eea-b5d8-11ee-8b88-92fbcf53809c.png

圖5 單區(qū)固件升級(jí)示意圖

App與BootLoader接收固件都需要完整的下載新的固件包,即便新的固件相較于舊固件改動(dòng)量很小,往往MCU RAM資源有限,需要分包下載,每包數(shù)據(jù)必須正確無誤,如果有錯(cuò)誤或者遺漏則需要重新下載。升級(jí)過程中如果斷電,需要再次請(qǐng)求網(wǎng)絡(luò)重新下載新的固件包,所以整包升級(jí)下載時(shí)間較長(zhǎng),升級(jí)失敗風(fēng)險(xiǎn)較高。對(duì)一些電池供電的設(shè)備,下載時(shí)間越長(zhǎng)系統(tǒng)功耗越高。

4、差分升級(jí)

在服務(wù)器端基于差分算法將舊固件V1和新固件V2的差異進(jìn)行提取并應(yīng)用壓縮算法計(jì)算出差分包,將差分包由服務(wù)器端傳輸給MCU客戶端,再由差分解壓縮算法還原出新的固件V2,這樣的升級(jí)方式稱為差分升級(jí),差分升級(jí)的示意圖如圖6所示。

8978e878-b5d8-11ee-8b88-92fbcf53809c.png

圖6 差分升級(jí)示意圖

一般差分算法核心思想為:對(duì)舊固件新固件文件做子字符串匹配或使用Hash技術(shù), 提取公共部分, 再將新固件文件中剩余的部分打包成差分包;在差分還原時(shí), 用復(fù)制和插入兩個(gè)基本操作將舊固件和差分包合成新固件。對(duì)于固件代碼較大而修改量較小的新固件,使用差分升級(jí)算法,差分包大小相較于新固件會(huì)明顯變小,無線升級(jí)時(shí)下載流量也會(huì)相應(yīng)大幅度降低。

6、差分升級(jí)vs全量升級(jí)

差分升級(jí)和全量升級(jí)各有各的優(yōu)點(diǎn)和適合應(yīng)用的領(lǐng)域,設(shè)計(jì)者在實(shí)際產(chǎn)品開發(fā)中可根據(jù)不同應(yīng)用選擇不同的升級(jí)方式。例如,產(chǎn)品是電池供電,并且數(shù)據(jù)傳輸速率比較低,則要求產(chǎn)品升級(jí)時(shí)能夠盡可能減少數(shù)據(jù)量的傳輸,節(jié)約功耗,此時(shí)可優(yōu)先采用差分升級(jí)的方式。差分升級(jí)與全量升級(jí)的主要特點(diǎn)比較如圖7所示。

8996e0d0-b5d8-11ee-8b88-92fbcf53809c.png

圖7差分升級(jí)與全量升級(jí)的主要特點(diǎn)比較







審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • ZigBee技術(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    115

    瀏覽量

    42491
  • FlaSh
    +關(guān)注

    關(guān)注

    10

    文章

    1644

    瀏覽量

    148719
  • RAM
    RAM
    +關(guān)注

    關(guān)注

    8

    文章

    1369

    瀏覽量

    115044
  • 電池供電
    +關(guān)注

    關(guān)注

    0

    文章

    255

    瀏覽量

    22265

原文標(biāo)題:差分升級(jí)方案(上)——全量升級(jí)vs差分升級(jí)

文章出處:【微信號(hào):小華半導(dǎo)體有限公司,微信公眾號(hào):小華半導(dǎo)體有限公司】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于MCU的分升級(jí)實(shí)現(xiàn)方案解析

    分升級(jí)又叫增量升級(jí),顧名思義就是通過分算法將源版本與目標(biāo)版本之間差異的部分提取出來制作成分包,然后在設(shè)備通過還原算法將差異部分在源版本
    的頭像 發(fā)表于 10-13 11:59 ?1.4w次閱讀
    基于MCU的<b class='flag-5'>差</b><b class='flag-5'>分升級(jí)</b>實(shí)現(xiàn)<b class='flag-5'>方案</b>解析

    請(qǐng)問esp32是否支持分升級(jí)?

    我現(xiàn)在工程需要適配ota功能,但是鑒于固件體積較大,想請(qǐng)教下是否支持分升級(jí)?
    發(fā)表于 06-21 08:14

    如何構(gòu)建STM32L452RE的分升級(jí)能力?

    在STM32L452RE這顆MCU如何將艾拉比的分升級(jí)功能,移植入STM32L452RE的bootloader中,從而使STM32L452RE能夠擁有
    發(fā)表于 09-11 11:51

    AliOS Things 3.0 開發(fā):OTA之差分升級(jí)快速上手

    升級(jí)快速上手查看詳情概要前面已經(jīng)介紹了AliOS Things 3.0 OTA的整包升級(jí)和壓縮升級(jí),本文將介紹AliOS Things 3.0版本的OTA
    發(fā)表于 10-18 09:57

    如何去實(shí)現(xiàn)基于單片機(jī)的分升級(jí)

    分算法有開源的bsdiff,壓縮算法也有開源的單片機(jī)就能用的,把這兩個(gè)結(jié)合起來放單片機(jī)里就可以實(shí)現(xiàn)分升級(jí)。由于上位機(jī)負(fù)責(zé)進(jìn)行分和壓縮的操作,而上位機(jī)沒有ram的限制,可以隨意。因
    發(fā)表于 11-19 06:14

    在單片機(jī)上實(shí)現(xiàn)分升級(jí)

    最近咨詢?nèi)绻趩纹瑱C(jī)上實(shí)現(xiàn)分升級(jí)的同學(xué)很多,因?yàn)樵创a目前不方便公開,所以有個(gè)想法是,向?qū)@塊比較感興趣的朋友提供基于各位所用編譯器的分算法庫,方便各位做學(xué)習(xí)交流使用。有需要的歡迎提
    發(fā)表于 01-20 08:16

    探討一下基于STM32單片機(jī)的分升級(jí)算法

    DiffIAP應(yīng)用背景隨著目前物聯(lián)網(wǎng),車聯(lián)網(wǎng),智能設(shè)備的增多,需要遠(yuǎn)程升級(jí)設(shè)備程序的場(chǎng)景增多,以往的IAP升級(jí)和OTA升級(jí)都是整包升級(jí),bin文件過大導(dǎo)致
    發(fā)表于 02-14 06:02

    ESP32C3固件太大,OTA時(shí)有沒有方法做分升級(jí)?

    如題,esp32c3同時(shí)打開BLE和WIFI的功能,固件都1MByte了,OTA時(shí)可以用分升級(jí)嗎。還有就是怎么優(yōu)化下固件大???
    發(fā)表于 02-15 08:02

    esp32是否支持分升級(jí)

    我現(xiàn)在工程需要適配ota功能,但是鑒于固件體積較大,想請(qǐng)教下是否支持分升級(jí)?
    發(fā)表于 02-20 07:36

    基于MCU,如何零代碼無開發(fā)實(shí)現(xiàn)OTA分升級(jí)?

    、工業(yè)等各個(gè)領(lǐng)域。在 MCU 的 OTA 升級(jí)方式,部分客戶實(shí)現(xiàn)方式為整包升級(jí),甚至很多 MCU 產(chǎn)品是裸跑,并且是不升級(jí)的,當(dāng)然這也和產(chǎn)品形態(tài)、功能特性、行業(yè)等
    的頭像 發(fā)表于 10-14 17:23 ?4945次閱讀
    基于MCU,如何零代碼無開發(fā)實(shí)現(xiàn)OTA<b class='flag-5'>差</b><b class='flag-5'>分升級(jí)</b>?

    基于單片機(jī)的分升級(jí)

    分算法有開源的bsdiff,壓縮算法也有開源的單片機(jī)就能用的,把這兩個(gè)結(jié)合起來放單片機(jī)里就可以實(shí)現(xiàn)分升級(jí)。由于上位機(jī)負(fù)責(zé)進(jìn)行分和壓縮的操作,而上位機(jī)沒有ram的限制,可以隨意。因
    發(fā)表于 11-12 21:06 ?11次下載
    基于單片機(jī)的<b class='flag-5'>差</b><b class='flag-5'>分升級(jí)</b>

    基于STM32單片機(jī)的分升級(jí)(增量升級(jí))算法

    DiffIAP應(yīng)用背景隨著目前物聯(lián)網(wǎng),車聯(lián)網(wǎng),智能設(shè)備的增多,需要遠(yuǎn)程升級(jí)設(shè)備程序的場(chǎng)景增多,以往的IAP升級(jí)和OTA升級(jí)都是整包升級(jí),bin文件過大導(dǎo)致
    發(fā)表于 12-09 15:51 ?20次下載
    基于STM32單片機(jī)的<b class='flag-5'>差</b><b class='flag-5'>分升級(jí)</b>(增量<b class='flag-5'>升級(jí)</b>)算法

    啟明FOTA分升級(jí) 系統(tǒng)級(jí)解決方案

    “你的設(shè)備遠(yuǎn)程升級(jí)可以不再是升級(jí)整個(gè)固件。啟明提供了一套完整的分升級(jí)算法,升級(jí)固件更小、下載速度更快、大大降低網(wǎng)絡(luò)不穩(wěn)定造成傳輸失敗概率,
    的頭像 發(fā)表于 06-05 09:40 ?1588次閱讀
    啟明FOTA<b class='flag-5'>差</b><b class='flag-5'>分升級(jí)</b> 系統(tǒng)級(jí)解決<b class='flag-5'>方案</b>

    啟明FOTA分升級(jí) 系統(tǒng)級(jí)解決方案

    “你的設(shè)備遠(yuǎn)程升級(jí)可以不再是升級(jí)整個(gè)固件。啟明提供了一套完整的分升級(jí)算法,升級(jí)固件更小、下載速度更快、大大降低網(wǎng)絡(luò)不穩(wěn)定造成傳輸失敗概率,
    的頭像 發(fā)表于 06-09 09:46 ?1547次閱讀
    啟明FOTA<b class='flag-5'>差</b><b class='flag-5'>分升級(jí)</b> 系統(tǒng)級(jí)解決<b class='flag-5'>方案</b>

    ZDP1440系列小技巧—如何OTA分升級(jí)顯示素材?

    ZDP1440是一款基于開源GUI引擎的圖像顯示專用驅(qū)動(dòng)芯片,支持U盤、SD卡本地升級(jí)UI固件,同時(shí)也支持通過UART/SPI方式進(jìn)行OTA升級(jí),本文將介紹如何OTA分升級(jí)顯示素材。
    的頭像 發(fā)表于 05-06 14:01 ?968次閱讀
    ZDP1440系列小技巧—如何OTA<b class='flag-5'>差</b><b class='flag-5'>分升級(jí)</b>顯示素材?